diff --git a/.eslintrc.json b/.eslintrc.json index 54074263..f0fec440 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -5,7 +5,8 @@ "plugin:import/errors", "plugin:react/recommended", "plugin:jsx-a11y/recommended", - "prettier" + "prettier", + "react-app" ], "plugins": ["react", "import", "jsx-a11y", "prettier"], "rules": { diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..73162a6c --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +public/sherpa-onnx-wasm-main-asr.data filter=lfs diff=lfs merge=lfs -text diff --git a/asr-utils/.appveyor.yml b/asr-utils/.appveyor.yml new file mode 100644 index 00000000..50910bd6 --- /dev/null +++ b/asr-utils/.appveyor.yml @@ -0,0 +1,11 @@ +install: + - appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe + - if not defined RUSTFLAGS rustup-init.exe -y --default-host x86_64-pc-windows-msvc --default-toolchain nightly + - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin + - rustc -V + - cargo -V + +build: false + +test_script: + - cargo test --locked diff --git a/asr-utils/.github/dependabot.yml b/asr-utils/.github/dependabot.yml new file mode 100644 index 00000000..7377d375 --- /dev/null +++ b/asr-utils/.github/dependabot.yml @@ -0,0 +1,8 @@ +version: 2 +updates: +- package-ecosystem: cargo + directory: "/" + schedule: + interval: daily + time: "08:00" + open-pull-requests-limit: 10 diff --git a/asr-utils/.gitignore b/asr-utils/.gitignore new file mode 100644 index 00000000..f5de7310 --- /dev/null +++ b/asr-utils/.gitignore @@ -0,0 +1,5 @@ +/target +**/*.rs.bk +Cargo.lock +bin/ +wasm-pack.log diff --git a/asr-utils/.travis.yml b/asr-utils/.travis.yml new file mode 100644 index 00000000..7a913256 --- /dev/null +++ b/asr-utils/.travis.yml @@ -0,0 +1,69 @@ +language: rust +sudo: false + +cache: cargo + +matrix: + include: + + # Builds with wasm-pack. + - rust: beta + env: RUST_BACKTRACE=1 + addons: + firefox: latest + chrome: stable + before_script: + - (test -x $HOME/.cargo/bin/cargo-install-update || cargo install cargo-update) + - (test -x $HOME/.cargo/bin/cargo-generate || cargo install --vers "^0.2" cargo-generate) + - cargo install-update -a + - curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh -s -- -f + script: + - cargo generate --git . --name testing + # Having a broken Cargo.toml (in that it has curlies in fields) anywhere + # in any of our parent dirs is problematic. + - mv Cargo.toml Cargo.toml.tmpl + - cd testing + - wasm-pack build + - wasm-pack test --chrome --firefox --headless + + # Builds on nightly. + - rust: nightly + env: RUST_BACKTRACE=1 + before_script: + - (test -x $HOME/.cargo/bin/cargo-install-update || cargo install cargo-update) + - (test -x $HOME/.cargo/bin/cargo-generate || cargo install --vers "^0.2" cargo-generate) + - cargo install-update -a + - rustup target add wasm32-unknown-unknown + script: + - cargo generate --git . --name testing + - mv Cargo.toml Cargo.toml.tmpl + - cd testing + - cargo check + - cargo check --target wasm32-unknown-unknown + - cargo check --no-default-features + - cargo check --target wasm32-unknown-unknown --no-default-features + - cargo check --no-default-features --features console_error_panic_hook + - cargo check --target wasm32-unknown-unknown --no-default-features --features console_error_panic_hook + - cargo check --no-default-features --features "console_error_panic_hook wee_alloc" + - cargo check --target wasm32-unknown-unknown --no-default-features --features "console_error_panic_hook wee_alloc" + + # Builds on beta. + - rust: beta + env: RUST_BACKTRACE=1 + before_script: + - (test -x $HOME/.cargo/bin/cargo-install-update || cargo install cargo-update) + - (test -x $HOME/.cargo/bin/cargo-generate || cargo install --vers "^0.2" cargo-generate) + - cargo install-update -a + - rustup target add wasm32-unknown-unknown + script: + - cargo generate --git . --name testing + - mv Cargo.toml Cargo.toml.tmpl + - cd testing + - cargo check + - cargo check --target wasm32-unknown-unknown + - cargo check --no-default-features + - cargo check --target wasm32-unknown-unknown --no-default-features + - cargo check --no-default-features --features console_error_panic_hook + - cargo check --target wasm32-unknown-unknown --no-default-features --features console_error_panic_hook + # Note: no enabling the `wee_alloc` feature here because it requires + # nightly for now. diff --git a/asr-utils/Cargo.toml b/asr-utils/Cargo.toml new file mode 100644 index 00000000..b80b15d9 --- /dev/null +++ b/asr-utils/Cargo.toml @@ -0,0 +1,36 @@ +[package] +name = "indicasr-wasm" +version = "0.1.0" +authors = ["Nikhil Narasimhan "] +edition = "2018" + +[lib] +crate-type = ["cdylib", "rlib"] + +[features] +default = ["console_error_panic_hook"] + +[dependencies] +wasm-bindgen = "0.2.84" +num-complex = "0.4.6" +rustfft = "6.2.0" +mel_spec = "0.2.3" +mel_spec_audio = "0.2.2" +ndarray = "0.15.6" +ndarray-stats = "0.5.1" +getrandom = { version = "0.2", features = ["js"] } +wavers = {version = "1.4.3", features = ["ndarray"]} +js-sys = "0.3.69" + +# The `console_error_panic_hook` crate provides better debugging of panics by +# logging them with `console.error`. This is great for development, but requires +# all the `std::fmt` and `std::panicking` infrastructure, so isn't great for +# code size when deploying. +console_error_panic_hook = { version = "0.1.7", optional = true } + +[dev-dependencies] +wasm-bindgen-test = "0.3.34" + +[profile.release] +# Tell `rustc` to optimize for small code size. +opt-level = "s" diff --git a/asr-utils/LICENSE_APACHE b/asr-utils/LICENSE_APACHE new file mode 100644 index 00000000..11069edd --- /dev/null +++ b/asr-utils/LICENSE_APACHE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/asr-utils/LICENSE_MIT b/asr-utils/LICENSE_MIT new file mode 100644 index 00000000..bbc68bf1 --- /dev/null +++ b/asr-utils/LICENSE_MIT @@ -0,0 +1,25 @@ +Copyright (c) 2018 Nikhil Narasimhan + +Permission is hereby granted, free of charge, to any +person obtaining a copy of this software and associated +documentation files (the "Software"), to deal in the +Software without restriction, including without +limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software +is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice +shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF +ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED +TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT +SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR +IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. diff --git a/asr-utils/README.md b/asr-utils/README.md new file mode 100644 index 00000000..6b684085 --- /dev/null +++ b/asr-utils/README.md @@ -0,0 +1,84 @@ +
+ +

wasm-pack-template

+ + A template for kick starting a Rust and WebAssembly project using wasm-pack. + +

+ Build Status +

+ +

+ Tutorial + | + Chat +

+ + Built with 🦀🕸 by The Rust and WebAssembly Working Group +
+ +## About + +[**📚 Read this template tutorial! 📚**][template-docs] + +This template is designed for compiling Rust libraries into WebAssembly and +publishing the resulting package to NPM. + +Be sure to check out [other `wasm-pack` tutorials online][tutorials] for other +templates and usages of `wasm-pack`. + +[tutorials]: https://rustwasm.github.io/docs/wasm-pack/tutorials/index.html +[template-docs]: https://rustwasm.github.io/docs/wasm-pack/tutorials/npm-browser-packages/index.html + +## 🚴 Usage + +### 🐑 Use `cargo generate` to Clone this Template + +[Learn more about `cargo generate` here.](https://github.com/ashleygwilliams/cargo-generate) + +``` +cargo generate --git https://github.com/rustwasm/wasm-pack-template.git --name my-project +cd my-project +``` + +### 🛠️ Build with `wasm-pack build` + +``` +wasm-pack build +``` + +### 🔬 Test in Headless Browsers with `wasm-pack test` + +``` +wasm-pack test --headless --firefox +``` + +### 🎁 Publish to NPM with `wasm-pack publish` + +``` +wasm-pack publish +``` + +## 🔋 Batteries Included + +* [`wasm-bindgen`](https://github.com/rustwasm/wasm-bindgen) for communicating + between WebAssembly and JavaScript. +* [`console_error_panic_hook`](https://github.com/rustwasm/console_error_panic_hook) + for logging panic messages to the developer console. +* `LICENSE-APACHE` and `LICENSE-MIT`: most Rust projects are licensed this way, so these are included for you + +## License + +Licensed under either of + +* Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0) +* MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT) + +at your option. + +### Contribution + +Unless you explicitly state otherwise, any contribution intentionally +submitted for inclusion in the work by you, as defined in the Apache-2.0 +license, shall be dual licensed as above, without any additional terms or +conditions. diff --git a/asr-utils/pkg/.gitignore b/asr-utils/pkg/.gitignore new file mode 100644 index 00000000..e69de29b diff --git a/asr-utils/pkg/README.md b/asr-utils/pkg/README.md new file mode 100644 index 00000000..6b684085 --- /dev/null +++ b/asr-utils/pkg/README.md @@ -0,0 +1,84 @@ +
+ +

wasm-pack-template

+ + A template for kick starting a Rust and WebAssembly project using wasm-pack. + +

+ Build Status +

+ +

+ Tutorial + | + Chat +

+ + Built with 🦀🕸 by The Rust and WebAssembly Working Group +
+ +## About + +[**📚 Read this template tutorial! 📚**][template-docs] + +This template is designed for compiling Rust libraries into WebAssembly and +publishing the resulting package to NPM. + +Be sure to check out [other `wasm-pack` tutorials online][tutorials] for other +templates and usages of `wasm-pack`. + +[tutorials]: https://rustwasm.github.io/docs/wasm-pack/tutorials/index.html +[template-docs]: https://rustwasm.github.io/docs/wasm-pack/tutorials/npm-browser-packages/index.html + +## 🚴 Usage + +### 🐑 Use `cargo generate` to Clone this Template + +[Learn more about `cargo generate` here.](https://github.com/ashleygwilliams/cargo-generate) + +``` +cargo generate --git https://github.com/rustwasm/wasm-pack-template.git --name my-project +cd my-project +``` + +### 🛠️ Build with `wasm-pack build` + +``` +wasm-pack build +``` + +### 🔬 Test in Headless Browsers with `wasm-pack test` + +``` +wasm-pack test --headless --firefox +``` + +### 🎁 Publish to NPM with `wasm-pack publish` + +``` +wasm-pack publish +``` + +## 🔋 Batteries Included + +* [`wasm-bindgen`](https://github.com/rustwasm/wasm-bindgen) for communicating + between WebAssembly and JavaScript. +* [`console_error_panic_hook`](https://github.com/rustwasm/console_error_panic_hook) + for logging panic messages to the developer console. +* `LICENSE-APACHE` and `LICENSE-MIT`: most Rust projects are licensed this way, so these are included for you + +## License + +Licensed under either of + +* Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0) +* MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT) + +at your option. + +### Contribution + +Unless you explicitly state otherwise, any contribution intentionally +submitted for inclusion in the work by you, as defined in the Apache-2.0 +license, shall be dual licensed as above, without any additional terms or +conditions. diff --git a/asr-utils/pkg/indicasr_wasm.d.ts b/asr-utils/pkg/indicasr_wasm.d.ts new file mode 100644 index 00000000..d358ba67 --- /dev/null +++ b/asr-utils/pkg/indicasr_wasm.d.ts @@ -0,0 +1,26 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * @param {Uint8Array} audio_file + * @returns {Array} + */ +export function run_preprocessor(audio_file: Uint8Array): Array; +/** + * @param {Array} logprobs + * @param {Uint32Array} shape + * @param {Array} vocab_arr + * @param {number} offset + * @param {number} actual_vocab_size + * @returns {Array} + */ +export function decode_logprobs(logprobs: Array, shape: Uint32Array, vocab_arr: Array, offset: number, actual_vocab_size: number): Array; +/** + * @param {Array} logits + * @param {Uint32Array} shape + * @param {Array} vocab_arr + * @param {number} offset + * @param {number} actual_vocab_size + * @param {number} topk + * @returns {Array} + */ +export function decode_logprobs_topk(logits: Array, shape: Uint32Array, vocab_arr: Array, offset: number, actual_vocab_size: number, topk: number): Array; diff --git a/asr-utils/pkg/indicasr_wasm.js b/asr-utils/pkg/indicasr_wasm.js new file mode 100644 index 00000000..8884aa76 --- /dev/null +++ b/asr-utils/pkg/indicasr_wasm.js @@ -0,0 +1,4 @@ +import * as wasm from "./indicasr_wasm_bg.wasm"; +export * from "./indicasr_wasm_bg.js"; +import { __wbg_set_wasm } from "./indicasr_wasm_bg.js"; +__wbg_set_wasm(wasm); \ No newline at end of file diff --git a/asr-utils/pkg/indicasr_wasm_bg.js b/asr-utils/pkg/indicasr_wasm_bg.js new file mode 100644 index 00000000..bcf15ad7 --- /dev/null +++ b/asr-utils/pkg/indicasr_wasm_bg.js @@ -0,0 +1,363 @@ +let wasm; +export function __wbg_set_wasm(val) { + wasm = val; +} + + +const heap = new Array(128).fill(undefined); + +heap.push(undefined, null, true, false); + +function getObject(idx) { return heap[idx]; } + +let heap_next = heap.length; + +function dropObject(idx) { + if (idx < 132) return; + heap[idx] = heap_next; + heap_next = idx; +} + +function takeObject(idx) { + const ret = getObject(idx); + dropObject(idx); + return ret; +} + +const lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder; + +let cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true }); + +cachedTextDecoder.decode(); + +let cachedUint8ArrayMemory0 = null; + +function getUint8ArrayMemory0() { + if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) { + cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer); + } + return cachedUint8ArrayMemory0; +} + +function getStringFromWasm0(ptr, len) { + ptr = ptr >>> 0; + return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len)); +} + +function addHeapObject(obj) { + if (heap_next === heap.length) heap.push(heap.length + 1); + const idx = heap_next; + heap_next = heap[idx]; + + heap[idx] = obj; + return idx; +} + +let WASM_VECTOR_LEN = 0; + +const lTextEncoder = typeof TextEncoder === 'undefined' ? (0, module.require)('util').TextEncoder : TextEncoder; + +let cachedTextEncoder = new lTextEncoder('utf-8'); + +const encodeString = (typeof cachedTextEncoder.encodeInto === 'function' + ? function (arg, view) { + return cachedTextEncoder.encodeInto(arg, view); +} + : function (arg, view) { + const buf = cachedTextEncoder.encode(arg); + view.set(buf); + return { + read: arg.length, + written: buf.length + }; +}); + +function passStringToWasm0(arg, malloc, realloc) { + + if (realloc === undefined) { + const buf = cachedTextEncoder.encode(arg); + const ptr = malloc(buf.length, 1) >>> 0; + getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf); + WASM_VECTOR_LEN = buf.length; + return ptr; + } + + let len = arg.length; + let ptr = malloc(len, 1) >>> 0; + + const mem = getUint8ArrayMemory0(); + + let offset = 0; + + for (; offset < len; offset++) { + const code = arg.charCodeAt(offset); + if (code > 0x7F) break; + mem[ptr + offset] = code; + } + + if (offset !== len) { + if (offset !== 0) { + arg = arg.slice(offset); + } + ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0; + const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len); + const ret = encodeString(arg, view); + + offset += ret.written; + ptr = realloc(ptr, len, offset, 1) >>> 0; + } + + WASM_VECTOR_LEN = offset; + return ptr; +} + +function isLikeNone(x) { + return x === undefined || x === null; +} + +let cachedDataViewMemory0 = null; + +function getDataViewMemory0() { + if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) { + cachedDataViewMemory0 = new DataView(wasm.memory.buffer); + } + return cachedDataViewMemory0; +} + +function debugString(val) { + // primitive types + const type = typeof val; + if (type == 'number' || type == 'boolean' || val == null) { + return `${val}`; + } + if (type == 'string') { + return `"${val}"`; + } + if (type == 'symbol') { + const description = val.description; + if (description == null) { + return 'Symbol'; + } else { + return `Symbol(${description})`; + } + } + if (type == 'function') { + const name = val.name; + if (typeof name == 'string' && name.length > 0) { + return `Function(${name})`; + } else { + return 'Function'; + } + } + // objects + if (Array.isArray(val)) { + const length = val.length; + let debug = '['; + if (length > 0) { + debug += debugString(val[0]); + } + for(let i = 1; i < length; i++) { + debug += ', ' + debugString(val[i]); + } + debug += ']'; + return debug; + } + // Test for built-in + const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val)); + let className; + if (builtInMatches.length > 1) { + className = builtInMatches[1]; + } else { + // Failed to match the standard '[object ClassName]' + return toString.call(val); + } + if (className == 'Object') { + // we're a user defined class or Object + // JSON.stringify avoids problems with cycles, and is generally much + // easier than looping through ownProperties of `val`. + try { + return 'Object(' + JSON.stringify(val) + ')'; + } catch (_) { + return 'Object'; + } + } + // errors + if (val instanceof Error) { + return `${val.name}: ${val.message}\n${val.stack}`; + } + // TODO we could test for more things here, like `Set`s and `Map`s. + return className; +} + +function passArray8ToWasm0(arg, malloc) { + const ptr = malloc(arg.length * 1, 1) >>> 0; + getUint8ArrayMemory0().set(arg, ptr / 1); + WASM_VECTOR_LEN = arg.length; + return ptr; +} +/** + * @param {Uint8Array} audio_file + * @returns {Array} + */ +export function run_preprocessor(audio_file) { + const ptr0 = passArray8ToWasm0(audio_file, wasm.__wbindgen_malloc); + const len0 = WASM_VECTOR_LEN; + const ret = wasm.run_preprocessor(ptr0, len0); + return takeObject(ret); +} + +let cachedUint32ArrayMemory0 = null; + +function getUint32ArrayMemory0() { + if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) { + cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer); + } + return cachedUint32ArrayMemory0; +} + +function passArray32ToWasm0(arg, malloc) { + const ptr = malloc(arg.length * 4, 4) >>> 0; + getUint32ArrayMemory0().set(arg, ptr / 4); + WASM_VECTOR_LEN = arg.length; + return ptr; +} +/** + * @param {Array} logprobs + * @param {Uint32Array} shape + * @param {Array} vocab_arr + * @param {number} offset + * @param {number} actual_vocab_size + * @returns {Array} + */ +export function decode_logprobs(logprobs, shape, vocab_arr, offset, actual_vocab_size) { + const ptr0 = passArray32ToWasm0(shape, wasm.__wbindgen_malloc); + const len0 = WASM_VECTOR_LEN; + const ret = wasm.decode_logprobs(addHeapObject(logprobs), ptr0, len0, addHeapObject(vocab_arr), offset, actual_vocab_size); + return takeObject(ret); +} + +/** + * @param {Array} logits + * @param {Uint32Array} shape + * @param {Array} vocab_arr + * @param {number} offset + * @param {number} actual_vocab_size + * @param {number} topk + * @returns {Array} + */ +export function decode_logprobs_topk(logits, shape, vocab_arr, offset, actual_vocab_size, topk) { + const ptr0 = passArray32ToWasm0(shape, wasm.__wbindgen_malloc); + const len0 = WASM_VECTOR_LEN; + const ret = wasm.decode_logprobs_topk(addHeapObject(logits), ptr0, len0, addHeapObject(vocab_arr), offset, actual_vocab_size, topk); + return takeObject(ret); +} + +function handleError(f, args) { + try { + return f.apply(this, args); + } catch (e) { + wasm.__wbindgen_exn_store(addHeapObject(e)); + } +} + +export function __wbindgen_object_drop_ref(arg0) { + takeObject(arg0); +}; + +export function __wbindgen_string_new(arg0, arg1) { + const ret = getStringFromWasm0(arg0, arg1); + return addHeapObject(ret); +}; + +export function __wbindgen_number_new(arg0) { + const ret = arg0; + return addHeapObject(ret); +}; + +export function __wbindgen_string_get(arg0, arg1) { + const obj = getObject(arg1); + const ret = typeof(obj) === 'string' ? obj : undefined; + var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + var len1 = WASM_VECTOR_LEN; + getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); + getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); +}; + +export function __wbindgen_number_get(arg0, arg1) { + const obj = getObject(arg1); + const ret = typeof(obj) === 'number' ? obj : undefined; + getDataViewMemory0().setFloat64(arg0 + 8 * 1, isLikeNone(ret) ? 0 : ret, true); + getDataViewMemory0().setInt32(arg0 + 4 * 0, !isLikeNone(ret), true); +}; + +export function __wbg_get_5419cf6b954aa11d(arg0, arg1) { + const ret = getObject(arg0)[arg1 >>> 0]; + return addHeapObject(ret); +}; + +export function __wbg_length_f217bbbf7e8e4df4(arg0) { + const ret = getObject(arg0).length; + return ret; +}; + +export function __wbg_new_034f913e7636e987() { + const ret = new Array(); + return addHeapObject(ret); +}; + +export function __wbg_new_e69b5f66fda8f13c() { + const ret = new Object(); + return addHeapObject(ret); +}; + +export function __wbg_push_36cf4d81d7da33d1(arg0, arg1) { + const ret = getObject(arg0).push(getObject(arg1)); + return ret; +}; + +export function __wbg_buffer_ccaed51a635d8a2d(arg0) { + const ret = getObject(arg0).buffer; + return addHeapObject(ret); +}; + +export function __wbg_newwithbyteoffsetandlength_fc445c2d308275d0(arg0, arg1, arg2) { + const ret = new Float32Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); + return addHeapObject(ret); +}; + +export function __wbg_new_1da7377de0530afc(arg0) { + const ret = new Float32Array(getObject(arg0)); + return addHeapObject(ret); +}; + +export function __wbg_set_e864d25d9b399c9f() { return handleError(function (arg0, arg1, arg2) { + const ret = Reflect.set(getObject(arg0), getObject(arg1), getObject(arg2)); + return ret; +}, arguments) }; + +export function __wbindgen_debug_string(arg0, arg1) { + const ret = debugString(getObject(arg1)); + const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len1 = WASM_VECTOR_LEN; + getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); + getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); +}; + +export function __wbindgen_throw(arg0, arg1) { + throw new Error(getStringFromWasm0(arg0, arg1)); +}; + +export function __wbindgen_memory() { + const ret = wasm.memory; + return addHeapObject(ret); +}; + +export function __wbindgen_array_new() { + const ret = []; + return addHeapObject(ret); +}; + +export function __wbindgen_array_push(arg0, arg1) { + getObject(arg0).push(takeObject(arg1)); +}; + diff --git a/asr-utils/pkg/indicasr_wasm_bg.wasm b/asr-utils/pkg/indicasr_wasm_bg.wasm new file mode 100644 index 00000000..aae9e31d Binary files /dev/null and b/asr-utils/pkg/indicasr_wasm_bg.wasm differ diff --git a/asr-utils/pkg/indicasr_wasm_bg.wasm.d.ts b/asr-utils/pkg/indicasr_wasm_bg.wasm.d.ts new file mode 100644 index 00000000..02b67c91 --- /dev/null +++ b/asr-utils/pkg/indicasr_wasm_bg.wasm.d.ts @@ -0,0 +1,9 @@ +/* tslint:disable */ +/* eslint-disable */ +export const memory: WebAssembly.Memory; +export function run_preprocessor(a: number, b: number): number; +export function decode_logprobs(a: number, b: number, c: number, d: number, e: number, f: number): number; +export function decode_logprobs_topk(a: number, b: number, c: number, d: number, e: number, f: number, g: number): number; +export function __wbindgen_malloc(a: number, b: number): number; +export function __wbindgen_realloc(a: number, b: number, c: number, d: number): number; +export function __wbindgen_exn_store(a: number): void; diff --git a/asr-utils/pkg/package.json b/asr-utils/pkg/package.json new file mode 100644 index 00000000..4e27b037 --- /dev/null +++ b/asr-utils/pkg/package.json @@ -0,0 +1,20 @@ +{ + "name": "indicasr-wasm", + "type": "module", + "collaborators": [ + "Nikhil Narasimhan " + ], + "version": "0.1.0", + "files": [ + "indicasr_wasm_bg.wasm", + "indicasr_wasm.js", + "indicasr_wasm_bg.js", + "indicasr_wasm.d.ts" + ], + "main": "indicasr_wasm.js", + "types": "indicasr_wasm.d.ts", + "sideEffects": [ + "./indicasr_wasm.js", + "./snippets/*" + ] +} \ No newline at end of file diff --git a/asr-utils/src/lib.rs b/asr-utils/src/lib.rs new file mode 100644 index 00000000..94fc42a7 --- /dev/null +++ b/asr-utils/src/lib.rs @@ -0,0 +1,538 @@ +mod utils; +use js_sys::{Array as JSArray, Float32Array as JSFloat32Array, Object as JSObject}; +use mel_spec::mel::mel; +use ndarray::{concatenate, s, Array1, Array2, Array3, Axis, Zip}; +use ndarray_stats::QuantileExt; +use rustfft::{num_complex::Complex32, FftPlanner}; +use std::cmp::min; +use std::collections::HashMap; +use std::io::{BufReader, Cursor}; +use utils::Value; +use wasm_bindgen::prelude::*; +use wavers::{IntoNdarray, ReadSeek, Wav}; + +// #[wasm_bindgen] +// extern "C" { +// fn alert(s: &str); +// #[wasm_bindgen(js_namespace = console, js_name = log)] +// fn log(b: &[u8]); +// #[wasm_bindgen(js_namespace = console, js_name = log)] +// fn log_str(s: &str); +// #[wasm_bindgen(js_namespace = console, js_name = log)] +// fn log_jsval(s: &JsValue); +// #[wasm_bindgen(js_namespace = console, js_name = log)] +// fn log_jsvecf32(s: Vec); +// #[wasm_bindgen(js_namespace = console, js_name = log)] +// fn log_jsvecusize(s: Vec); +// } + +// #[wasm_bindgen] +// pub fn greet() { +// alert("Hello, indicasr-wasm!"); +// } + +fn do_premphasis(audio: Array2, val: f32) -> Array2 { + let arr1 = audio.column(0).insert_axis(Axis(1)); + let arr2 = audio.slice(s![.., 1..]).to_owned() - audio.slice(s![.., ..-1]).mapv(|a| a * val); + let final_arr = concatenate(Axis(1), &[arr1, arr2.view()]).unwrap(); + final_arr +} + +fn stft( + signal: Array2, + window_size: usize, + step_size: usize, + fft_size: usize, +) -> Array3 { + let num_channels = signal.dim().0; + + let signal_len = signal.len(); + let num_windows = (signal_len - window_size) / step_size + 1; + + let mut planner = FftPlanner::new(); + let fft = planner.plan_fft_forward(fft_size); + + let hann_window: Array1 = Array1::linspace(0., 1., window_size) + .mapv(|x| 0.5 - 0.5 * (2.0 * std::f32::consts::PI * x).cos()); + + let mut stft_result = Array3::zeros((num_channels, num_windows, fft_size / 2 + 1)); + + for c in 0..num_channels { + for (i, window) in signal + .row(c) + .to_vec() + .windows(window_size) + .step_by(step_size) + .enumerate() + { + let mut fft_input: Vec = vec![Complex32::new(0.0, 0.0); fft_size]; + + for (j, (&s, &w)) in window.iter().zip(hann_window.iter()).enumerate() { + fft_input[j] = Complex32::new(s * w, 0.0); + } + + fft.process(&mut fft_input); + + let fft_output: Array1 = Array1::from_iter( + fft_input + .iter() + .take(fft_size / 2 + 1) + .map(|&c| Complex32::new(c.re, c.im)), + ); + + stft_result.slice_mut(s![c, i, ..]).assign(&fft_output); + } + } + + stft_result.permuted_axes((0, 2, 1)) +} + +fn do_stft( + audio: Array2, + window_size: usize, + step_size: usize, + fft_size: usize, +) -> Array3 { + let stft_tensor = stft(audio, window_size, step_size, fft_size); + let stft_tensor = stft_tensor.mapv(|a| a.re.powi(2) + a.im.powi(2)); + let stft_tensor = stft_tensor.mapv(|a| a.sqrt()); + stft_tensor +} + +fn dot_with_filterbank_energies( + audio: Array3, + sampling_rate: f64, + fft_size: usize, + n_mels: usize, + f_min: Option, + f_max: Option, +) -> Array3 { + let filterbanks = mel(sampling_rate, fft_size, n_mels, f_min, f_max, false, true) + .mapv(|a| a as f32) + .insert_axis(Axis(0)); + + let mut result: Array3 = + Array3::zeros((filterbanks.dim().0, filterbanks.dim().1, audio.dim().2)); + + for i in 0..filterbanks.dim().0 { + let a_2d: Array2 = filterbanks.slice(s![i, .., ..]).to_owned(); + let b_2d: Array2 = audio.slice(s![i, .., ..]).to_owned(); + let result_2d = a_2d.dot(&b_2d); + + result.slice_mut(s![i, .., ..]).assign(&result_2d); + } + + result +} + +fn normalize_per_feature( + audio: Array3, + seq_len: &Array1, + constant: f32, +) -> (Array3, Array2, Array2) { + let mut x_mean: Array2 = Array2::zeros((seq_len.shape()[0], audio.shape()[1])); + let mut x_std: Array2 = Array2::zeros((seq_len.shape()[0], audio.shape()[1])); + + for i in 0..audio.shape()[0] { + let third_dim = min(seq_len[i], audio.dim().2); + if audio.slice(s![i, .., ..third_dim]).shape()[0] == 1 { + panic!("normalize_batch with `per_feature` normalize_type received a tensor of length 1. This will result in torch.std() returning nan. Make sure your audio length has enough samples for a single feature (ex. at least `hop_length` for Mel Spectrograms).") + } + x_mean.slice_mut(s![i, ..]).assign( + &audio + .slice(s![i, .., ..min(third_dim, audio.dim().2)]) + .mean_axis(Axis(1)) + .unwrap(), + ); + x_std + .slice_mut(s![i, ..]) + .assign(&audio.slice(s![i, .., ..third_dim]).std_axis(Axis(1), 1.0)); + } + let x_std = x_std.mapv(|a| a + constant); + ( + (audio - x_mean.view().insert_axis(Axis(2))) / x_std.view().insert_axis(Axis(2)), + x_mean, + x_std, + ) +} + +fn arange(start: f32, end: f32, step: f32) -> Array1 { + if step == 0.0 { + panic!("Step cannot be zero"); + } + + let len = ((end - start) / step).ceil() as usize; + Array1::from_shape_fn(len, |i| start + i as f32 * step) +} + +fn repeat(array: Array1, repeats: (usize, usize)) -> Array2 { + let (repeat_rows, repeat_cols) = repeats; + + // Create a 2D array where each row is a repeated 1D array + let rows: Vec> = (0..repeat_rows) + .map(|_| array.to_vec()) // Repeat the 1D array to create rows + .collect(); + + // Flatten the 2D rows into a single vector and repeat each row + let repeated_rows: Vec = rows + .iter() + .flat_map(|row| row.iter().flat_map(|&x| vec![x; repeat_cols])) + .collect(); + + // Create the final Array2 + Array2::from_shape_vec((repeat_rows, repeat_cols * array.len()), repeated_rows).unwrap() +} + +fn run_mask(audio: Array3, seq_len: Array1) -> Array3 { + let max_len = audio.dim().2 as f32; + let mask = arange(0.0, max_len, 1.0); + let arr1 = repeat(mask, (audio.dim().0, 1)); + let arr2 = seq_len + .insert_axis(Axis(1)) + .broadcast(arr1.dim()) + .unwrap() + .mapv(|a| a as f32); + + let mut mask: Array2 = Array2::from_elem(arr1.dim(), false); + Zip::from(&mut mask) + .and(&arr1) + .and(&arr2) + .for_each(|a, &b, &c| *a = b >= c); + + let mask = mask + .insert_axis(Axis(1)) + .broadcast(audio.dim()) + .unwrap() + .to_owned(); + let mut masked_signal = audio.clone(); + Zip::from(&mut masked_signal) + .and(&audio) + .and(&mask) + .for_each(|a, &b, &c| *a = if c { 0.0 } else { b }); + + masked_signal +} + +fn softmax(array: &Array3) -> Array3 { + // Calculate softmax along the last axis (logits) + let max_values = array + .map_axis(Axis(2), |x| { + *x.iter().max_by(|a, b| a.partial_cmp(b).unwrap()).unwrap() + }) + .insert_axis(Axis(2)); + let exp_array = (array - &max_values).mapv(f32::exp); + let sum_exp = exp_array.sum_axis(Axis(2)).insert_axis(Axis(2)); // Keep the dimensions + + exp_array / sum_exp // Broadcasting division +} + +fn get_argmax(arr: &Array3) -> Array2 { + let dims = arr.dim(); + + let mut argmax: Array2 = Array2::zeros((dims.0, dims.1)); + for batch in 0..dims.0 { + for timestep in 0..dims.1 { + argmax + .slice_mut(s![batch, timestep]) + .fill(arr.slice(s![batch, timestep, ..]).argmax().unwrap()); + } + } + argmax +} + +fn get_argmax_topk(arr: &mut Array3, topk: usize) -> Array3<(usize, f32)> { + let dims = arr.dim(); + + let mut argmax: Array3<(usize, f32)> = + Array3::from_shape_fn((dims.0, dims.1, topk), |_| (0, 0.0)); + + for batch in 0..dims.0 { + for k in 0..topk { + for timestep in 0..dims.1 { + let argmax_idx: usize = arr.slice(s![batch, timestep, ..]).argmax().unwrap(); + let argmax_prob: f32 = arr[[batch, timestep, argmax_idx]]; + + argmax[[batch, timestep, k]] = (argmax_idx, argmax_prob); + arr[[batch, timestep, argmax_idx]] = 0.0; + } + } + } + + argmax +} + +fn merge_logprobs(arr: &Array2) -> Vec> { + let mut result = Vec::new(); + + // Iterate over the slices along the specified axis + for batch in arr.axis_iter(Axis(0)) { + let mut unique = Vec::new(); + let mut previous = None; + + // Iterate over the elements of the current slice + for &value in batch.iter() { + if Some(value) != previous { + unique.push(value); + previous = Some(value); + } + } + + result.push(unique); + } + + result +} + +fn merge_logprobs_topk(arr: &Array3<(usize, f32)>) -> Vec>> { + let mut result = Vec::new(); + + // Iterate over the slices along the specified axis + for batch in arr.axis_iter(Axis(0)) { + let mut unique = Vec::new(); + let mut previous = None; + + // Iterate over the elements of the current slice + for timestep in batch.axis_iter(Axis(0)) { + let (idx, _): (usize, f32) = timestep[[0]]; + if Some(idx) != previous { + unique.push(timestep.to_owned().into_raw_vec()); + previous = Some(idx); + } + } + + result.push(unique); + } + + result +} + +fn get_text(vocab: &Vec, indices: Vec) -> String { + let mut text = String::from(""); + for i in indices { + let mut token = vocab[i].as_str(); + + if token == "b" { + token = ""; + } + + text += token; + } + + text.replace("▁", " ") +} + +fn get_text_topk(vocab: &Vec, indices: Vec>) -> HashMap { + let mut n_best_tokens = Vec::new(); + let mut sent = String::new(); + + let mut cur_word = String::new(); + let mut cur_tokens = Vec::new(); + for tokens in indices { + let (highest_prob_token_id, _) = tokens[0]; + let highest_prob_token = &vocab[highest_prob_token_id]; + + if highest_prob_token_id == vocab.len() - 1 { + continue; + } + + if highest_prob_token.contains("▁") { + sent += cur_word.replace("▁", " ").as_str(); + + if cur_word != "" { + let word = HashMap::from([ + ("word".to_string(), Value::Text(cur_word.replace("▁", ""))), + ("tokens".to_string(), Value::MapList(cur_tokens)), + ]); + + n_best_tokens.push(word); + } + cur_word = String::new(); + cur_tokens = Vec::new(); + } + + // println!("{:?}", n_best_tokens); + cur_word += highest_prob_token; + if highest_prob_token == "▁" { + continue; + } + + let mut tokens_topk = HashMap::new(); + for (token, prob) in tokens { + tokens_topk.insert(vocab[token].to_string(), Value::Float(prob)); + } + + cur_tokens.push(tokens_topk); + } + + // for the remaining tokens + sent += cur_word.replace("▁", " ").as_str(); + if cur_word != "" { + let word = HashMap::from([ + ("word".to_string(), Value::Text(cur_word.replace("▁", ""))), + ("tokens".to_string(), Value::MapList(cur_tokens)), + ]); + + n_best_tokens.push(word); + } + + HashMap::from([ + ("text".to_string(), Value::Text(sent)), + ("nBestTokens".to_string(), Value::MapList(n_best_tokens)), + ]) +} + +fn array3_to_js_array(audio: Array3) -> JSArray { + let audio_array: JSArray = JSArray::new(); + let (n, m, _) = audio.dim(); + for i in 0..n { + let arr_2d: JSArray = JSArray::new(); + for j in 0..m { + // Convert each 1D slice to Vec + let arr_1d: JSFloat32Array = + JSFloat32Array::from(audio.slice(s![i, j, ..]).to_vec().as_slice()); + arr_2d.push(&arr_1d.into()); + } + audio_array.push(&arr_2d.into()); + } + audio_array +} + +fn js_array_to_array3( + arr: JSArray, + shape: &[usize], + vocab_start: usize, + vocab_end: usize, +) -> Array3 { + let arr3 = Array3::from_shape_vec( + (shape[0], shape[1], shape[2]), + arr.to_vec() + .iter() + .map(|a| a.as_f64().unwrap() as f32) + .collect(), + ) + .unwrap(); + + let logits_arr = arr3.slice(s![.., .., vocab_start..vocab_end]).to_owned(); + let blanks_arr = arr3.slice(s![.., .., (shape[2] - 1)..]).to_owned(); + concatenate(Axis(2), &[logits_arr.view(), blanks_arr.view()]).unwrap() +} + +fn hashmap_to_jsmap(topk_map: &HashMap) -> JsValue { + // Create a JS object + let js_object = JSObject::new(); + + // Insert values into the JS object + for (key, value) in topk_map { + let js_value = match value { + Value::Text(s) => JsValue::from(s.to_owned()), + Value::Float(f) => JsValue::from(f.to_owned()), + // Value::List(v) => JsValue::from_serde(&v).unwrap(), + Value::MapList(m) => JsValue::from( + m.iter() + .map(|x| hashmap_to_jsmap(x)) + .collect::>(), + ), + }; + // let js_value = serde_wasm_bindgen::to_value(&value).unwrap(); + + // Use Reflect to set properties on the JS object + js_sys::Reflect::set(&js_object, &JsValue::from(key), &js_value).unwrap(); + } + + JsValue::from(js_object) +} + +#[wasm_bindgen] +pub fn run_preprocessor(audio_file: &[u8]) -> JSArray { + #[cfg(debug_assertions)] + utils::set_panic_hook(); + let cursor = Cursor::new(audio_file.to_owned()); + let buf_reader: Box = Box::new(BufReader::new(cursor)); + let wav: Wav = Wav::new(buf_reader).unwrap(); + let (audio_tensor, _): (Array2, i32) = wav.into_ndarray().unwrap(); + let audio_tensor = audio_tensor.t().to_owned(); + let seq_len = Array1::from_vec(vec![audio_tensor.ncols()]); + let audio_tensor = audio_tensor.mapv(f32::from); + let audio_tensor = audio_tensor.mapv(|a| a / 32768.0); + let audio_tensor = do_premphasis(audio_tensor, 0.97); + let audio_tensor = do_stft( + audio_tensor, + 400, /*0.025 * 16000.0*/ + 160, /*0.01 * 16000.0*/ + 512, + ); + let audio_tensor = audio_tensor.mapv(|a| a.powi(2)); + let audio_tensor = + dot_with_filterbank_energies(audio_tensor, 16000.0, 512, 80, Some(0.0), None); + let audio_tensor = audio_tensor.mapv(|a| a + 2_f32.powi(-24)).mapv(|a| a.ln()); + let (audio_tensor, _, _) = normalize_per_feature(audio_tensor, &seq_len, 1e-5); + let audio_tensor = run_mask(audio_tensor, seq_len); + + array3_to_js_array(audio_tensor) +} + +#[wasm_bindgen] +pub fn decode_logprobs( + logprobs: JSArray, + shape: &[usize], + vocab_arr: JSArray, + offset: usize, + actual_vocab_size: usize, +) -> JSArray { + let vocab_start = offset * actual_vocab_size; + let vocab_end = vocab_start + actual_vocab_size; + + let arr = js_array_to_array3(logprobs, shape, vocab_start, vocab_end); + + let argmax = get_argmax(&arr); + let indices_batch = merge_logprobs(&argmax); + + let mut vocab: Vec = vocab_arr.to_vec()[vocab_start..vocab_end] + .iter() + .map(|a| a.as_string().unwrap()) + .collect(); + + vocab.push(String::from("b")); + + let text: JSArray = JSArray::new(); + for indices in indices_batch { + let t = get_text(&vocab, indices); + text.push(&JsValue::from_str(&t.as_str().trim())); + } + + text +} + +#[wasm_bindgen] +pub fn decode_logprobs_topk( + logits: JSArray, + shape: &[usize], + vocab_arr: JSArray, + offset: usize, + actual_vocab_size: usize, + topk: usize, +) -> JSArray { + let vocab_start = offset * actual_vocab_size; + let vocab_end = vocab_start + actual_vocab_size; + + let logits_arr3 = js_array_to_array3(logits, shape, vocab_start, vocab_end); + let mut logprobs = softmax(&logits_arr3); + + let argmax = get_argmax_topk(&mut logprobs, topk); + let indices_batch = merge_logprobs_topk(&argmax); + + let mut vocab: Vec = vocab_arr.to_vec()[vocab_start..vocab_end] + .iter() + .map(|a| a.as_string().unwrap()) + .collect(); + + vocab.push(String::from("")); + + let text: JSArray = JSArray::new(); + for indices in indices_batch { + let t = get_text_topk(&vocab, indices); + text.push(&hashmap_to_jsmap(&t)); + } + + text +} diff --git a/asr-utils/src/utils.rs b/asr-utils/src/utils.rs new file mode 100644 index 00000000..595b6676 --- /dev/null +++ b/asr-utils/src/utils.rs @@ -0,0 +1,19 @@ +use std::collections::HashMap; + +pub fn set_panic_hook() { + // When the `console_error_panic_hook` feature is enabled, we can call the + // `set_panic_hook` function at least once during initialization, and then + // we will get better error messages if our code ever panics. + // + // For more details see + // https://github.com/rustwasm/console_error_panic_hook#readme + // #[cfg(feature = "console_error_panic_hook")] + #[cfg(debug_assertions)] + console_error_panic_hook::set_once(); +} + +pub enum Value { + Text(String), + MapList(Vec>), + Float(f32), +} diff --git a/asr-utils/tests/web.rs b/asr-utils/tests/web.rs new file mode 100644 index 00000000..de5c1daf --- /dev/null +++ b/asr-utils/tests/web.rs @@ -0,0 +1,13 @@ +//! Test suite for the Web and headless browsers. + +#![cfg(target_arch = "wasm32")] + +extern crate wasm_bindgen_test; +use wasm_bindgen_test::*; + +wasm_bindgen_test_configure!(run_in_browser); + +#[wasm_bindgen_test] +fn pass() { + assert_eq!(1 + 1, 2); +} diff --git a/index.html b/index.html index 08e44588..bc8dd48a 100644 --- a/index.html +++ b/index.html @@ -12,7 +12,6 @@ name="description" content="Base React App structure for Devigital Systems Projects" /> - @@ -23,34 +22,17 @@ /> + + + + + + + EkStep - - - - -
diff --git a/package-lock.json b/package-lock.json index a3e0a94b..bfa67b23 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,7 +1,7 @@ { "name": "new", "version": "0.1.0", - "lockfileVersion": 3, + "lockfileVersion": 2, "requires": true, "packages": { "": { @@ -9,8 +9,9 @@ "version": "0.1.0", "dependencies": { "@aws-sdk/client-s3": "^3.388.0", - "@emotion/react": "^11.7.0", - "@emotion/styled": "^11.6.0", + "@emotion/react": "^11.14.0", + "@emotion/styled": "^11.14.0", + "@ffmpeg/ffmpeg": "^0.9.8", "@fingerprintjs/fingerprintjs": "^4.2.2", "@mui/icons-material": "^5.2.5", "@mui/material": "^5.2.2", @@ -29,8 +30,12 @@ "eslint-plugin-import": "^2.28.0", "eslint-plugin-jsx-a11y": "^6.7.1", "faker": "^5.5.3", + "ffmpeg": "^0.0.4", "framer-motion": "^12.4.1", + "fuzzball": "^2.1.3", + "hoist-non-react-statics": "^3.3.2", "homophones": "^1.0.1", + "indicasr-wasm": "file:asr-utils/pkg", "jwt-decode": "^4.0.0", "lodash": "^4.17.21", "memoize-one": "^6.0.0", @@ -67,6 +72,8 @@ "@vitejs/plugin-react-swc": "^3.10.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jsx-a11y": "^6.9.0", "eslint-plugin-prettier": "^3.4.0", "eslint-plugin-react": "^7.37.5", "eslint-plugin-react-hooks": "^5.2.0", @@ -74,13 +81,15 @@ "lint-staged": "^11.2.6", "prettier": "^2.8.8", "react": "^18.2.0", - "vite": "^6.3.5" + "vite": "^4.5.2" } }, + "asr-utils/pkg": { + "name": "indicasr-wasm", + "version": "0.1.0" + }, "node_modules/@aashutoshrathi/word-wrap": { "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", "dev": true, "license": "MIT", "engines": { @@ -89,14 +98,10 @@ }, "node_modules/@adobe/css-tools": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz", - "integrity": "sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA==", "license": "MIT" }, "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, "license": "Apache-2.0", "dependencies": { @@ -109,8 +114,6 @@ }, "node_modules/@aws-crypto/crc32": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz", - "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/util": "^5.2.0", @@ -123,8 +126,6 @@ }, "node_modules/@aws-crypto/crc32c": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz", - "integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/util": "^5.2.0", @@ -134,8 +135,6 @@ }, "node_modules/@aws-crypto/sha1-browser": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz", - "integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/supports-web-crypto": "^5.2.0", @@ -148,8 +147,6 @@ }, "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -160,8 +157,6 @@ }, "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", - "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", "license": "Apache-2.0", "dependencies": { "@smithy/is-array-buffer": "^2.2.0", @@ -173,8 +168,6 @@ }, "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", - "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", "license": "Apache-2.0", "dependencies": { "@smithy/util-buffer-from": "^2.2.0", @@ -186,8 +179,6 @@ }, "node_modules/@aws-crypto/sha256-browser": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", - "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-js": "^5.2.0", @@ -201,8 +192,6 @@ }, "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -213,8 +202,6 @@ }, "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", - "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", "license": "Apache-2.0", "dependencies": { "@smithy/is-array-buffer": "^2.2.0", @@ -226,8 +213,6 @@ }, "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", - "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", "license": "Apache-2.0", "dependencies": { "@smithy/util-buffer-from": "^2.2.0", @@ -239,8 +224,6 @@ }, "node_modules/@aws-crypto/sha256-js": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", - "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/util": "^5.2.0", @@ -253,8 +236,6 @@ }, "node_modules/@aws-crypto/supports-web-crypto": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", - "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -262,8 +243,6 @@ }, "node_modules/@aws-crypto/util": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", - "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "^3.222.0", @@ -273,8 +252,6 @@ }, "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -285,8 +262,6 @@ }, "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", - "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", "license": "Apache-2.0", "dependencies": { "@smithy/is-array-buffer": "^2.2.0", @@ -298,8 +273,6 @@ }, "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", - "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", "license": "Apache-2.0", "dependencies": { "@smithy/util-buffer-from": "^2.2.0", @@ -311,8 +284,6 @@ }, "node_modules/@aws-sdk/client-s3": { "version": "3.674.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.674.0.tgz", - "integrity": "sha512-/pbAGFXUFqhZPrb4vACYdJzAc/lX/MPW1sxRoiX46BVjvpT7QkYwRjlzuifskLyDf2TjkGNsXu+F6AgPGCXFUg==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", @@ -380,8 +351,6 @@ }, "node_modules/@aws-sdk/client-sso": { "version": "3.670.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.670.0.tgz", - "integrity": "sha512-J+oz6uSsDvk4pimMDnKJb1wsV216zTrejvMTIL4RhUD1QPIVVOpteTdUShcjZUIZnkcJZGI+cym/SFK0kuzTpg==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", @@ -429,8 +398,6 @@ }, "node_modules/@aws-sdk/client-sso-oidc": { "version": "3.670.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.670.0.tgz", - "integrity": "sha512-4qDK2L36Q4J1lfemaHHd9ZxqKRaos3STp44qPAHf/8QyX6Uk5sXgZNVO2yWM7SIEtVKwwBh/fZAsdBkGPBfZcw==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", @@ -482,8 +449,6 @@ }, "node_modules/@aws-sdk/client-sts": { "version": "3.670.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.670.0.tgz", - "integrity": "sha512-bExrNo8ZVWorS3cjMZKQnA2HWqDmAzcZoSN/cPVoPFNkHwdl1lzPxvcLzmhpIr48JHgKfybBjrbluDZfIYeEog==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", @@ -533,8 +498,6 @@ }, "node_modules/@aws-sdk/core": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.667.0.tgz", - "integrity": "sha512-pMcDVI7Tmdsc8R3sDv0Omj/4iRParGY+uJtAfF669WnZfDfaBQaix2Mq7+Mu08vdjqO9K3gicFvjk9S1VLmOKA==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -555,8 +518,6 @@ }, "node_modules/@aws-sdk/credential-provider-env": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.667.0.tgz", - "integrity": "sha512-zZbrkkaPc54WXm+QAnpuv0LPNfsts0HPPd+oCECGs7IQRaFsGj187cwvPg9RMWDFZqpm64MdBDoA8OQHsqzYCw==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.667.0", @@ -571,8 +532,6 @@ }, "node_modules/@aws-sdk/credential-provider-http": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.667.0.tgz", - "integrity": "sha512-sjtybFfERZWiqTY7fswBxKQLvUkiCucOWyqh3IaPo/4nE1PXRnaZCVG0+kRBPrYIxWqiVwytvZzMJy8sVZcG0A==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.667.0", @@ -592,8 +551,6 @@ }, "node_modules/@aws-sdk/credential-provider-ini": { "version": "3.670.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.670.0.tgz", - "integrity": "sha512-TB1gacUj75leaTt2JsCTzygDSIk4ksv9uZoR7VenlgFPRktyOeT+fapwIVBeB2Qg7b9uxAY2K5XkKstDZyBEEw==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.667.0", @@ -618,8 +575,6 @@ }, "node_modules/@aws-sdk/credential-provider-node": { "version": "3.670.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.670.0.tgz", - "integrity": "sha512-zwNrRYzubk4CaZ7zebeDhxsm8QtNWkbGKopZPOaZSnd5uqUGRcmx4ccVRngWUK68XDP44aEUWC8iU5Pc7btpHQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/credential-provider-env": "3.667.0", @@ -641,8 +596,6 @@ }, "node_modules/@aws-sdk/credential-provider-process": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.667.0.tgz", - "integrity": "sha512-HZHnvop32fKgsNHkdhVaul7UzQ25sEc0j9yqA4bjhtbk0ECl42kj3f1pJ+ZU/YD9ut8lMJs/vVqiOdNThVdeBw==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.667.0", @@ -658,8 +611,6 @@ }, "node_modules/@aws-sdk/credential-provider-sso": { "version": "3.670.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.670.0.tgz", - "integrity": "sha512-5PkA8BOy4q57Vhe9AESoHKZ7vjRbElNPKjXA4qC01xY+DitClRFz4O3B9sMzFp0PHlz9nDVSXXKgq0yzF/nAag==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/client-sso": "3.670.0", @@ -677,8 +628,6 @@ }, "node_modules/@aws-sdk/credential-provider-web-identity": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.667.0.tgz", - "integrity": "sha512-t8CFlZMD/1p/8Cli3rvRiTJpjr/8BO64gw166AHgFZYSN2h95L2l1tcW0jpsc3PprA32nLg1iQVKYt4WGM4ugw==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.667.0", @@ -696,8 +645,6 @@ }, "node_modules/@aws-sdk/middleware-bucket-endpoint": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.667.0.tgz", - "integrity": "sha512-XGz4jMAkDoTyFdtLz7ZF+C05IAhCTC1PllpvTBaj821z/L0ilhbqVhrT/f2Buw8Id/K5A390csGXgusXyrFFjA==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -714,8 +661,6 @@ }, "node_modules/@aws-sdk/middleware-expect-continue": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.667.0.tgz", - "integrity": "sha512-0TiSL9S5DSG95NHGIz6qTMuV7GDKVn8tvvGSrSSZu/wXO3JaYSH0AElVpYfc4PtPRqVpEyNA7nnc7W56mMCLWQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -729,8 +674,6 @@ }, "node_modules/@aws-sdk/middleware-flexible-checksums": { "version": "3.669.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.669.0.tgz", - "integrity": "sha512-01UQLoUzVwWMf+b+AEuwJ2lluBD+Cp8AcbyEHqvEaPdjGKHIS4BCvnY70mZYnAfRtL8R2h9tt7iI61oWU3Gjkg==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", @@ -751,8 +694,6 @@ }, "node_modules/@aws-sdk/middleware-host-header": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.667.0.tgz", - "integrity": "sha512-Z7fIAMQnPegs7JjAQvlOeWXwpMRfegh5eCoIP6VLJIeR6DLfYKbP35JBtt98R6DXslrN2RsbTogjbxPEDQfw1w==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -766,8 +707,6 @@ }, "node_modules/@aws-sdk/middleware-location-constraint": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.667.0.tgz", - "integrity": "sha512-ob85H3HhT3/u5O+x0o557xGZ78vSNeSSwMaSitxdsfs2hOuoUl1uk+OeLpi1hkuJnL41FPpokV7TVII2XrFfmg==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -780,8 +719,6 @@ }, "node_modules/@aws-sdk/middleware-logger": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.667.0.tgz", - "integrity": "sha512-PtTRNpNm/5c746jRgZCNg4X9xEJIwggkGJrF0GP9AB1ANg4pc/sF2Fvn1NtqPe9wtQ2stunJprnm5WkCHN7QiA==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -794,8 +731,6 @@ }, "node_modules/@aws-sdk/middleware-recursion-detection": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.667.0.tgz", - "integrity": "sha512-U5glWD3ehFohzpUpopLtmqAlDurGWo2wRGPNgi4SwhWU7UDt6LS7E/UvJjqC0CUrjlzOw+my2A+Ncf+fisMhxQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -809,8 +744,6 @@ }, "node_modules/@aws-sdk/middleware-sdk-s3": { "version": "3.674.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.674.0.tgz", - "integrity": "sha512-IvXnWrKy4mO+I44kLYHd6Wlw+FdB4sg1jvHCmnZo1KNaAFIA3x1iXgOaZynKoBdEmol3xfr2uDbeXUQvIwoIgg==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.667.0", @@ -834,8 +767,6 @@ }, "node_modules/@aws-sdk/middleware-ssec": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.667.0.tgz", - "integrity": "sha512-1wuAUZIkmZIvOmGg5qNQU821CGFHhkuKioxXgNh0DpUxZ9+AeiV7yorJr+bqkb2KBFv1i1TnzGRecvKf/KvZIQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -848,8 +779,6 @@ }, "node_modules/@aws-sdk/middleware-user-agent": { "version": "3.669.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.669.0.tgz", - "integrity": "sha512-K8ScPi45zjJrj5Y2gRqVsvKKQCQbvQBfYGcBw9ZOx9TTavH80bOCBjWg/GFnvs4f37tqVc1wMN2oGvcTF6HveQ==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/core": "3.667.0", @@ -866,8 +795,6 @@ }, "node_modules/@aws-sdk/region-config-resolver": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.667.0.tgz", - "integrity": "sha512-iNr+JhhA902JMKHG9IwT9YdaEx6KGl6vjAL5BRNeOjfj4cZYMog6Lz/IlfOAltMtT0w88DAHDEFrBd2uO0l2eg==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -883,8 +810,6 @@ }, "node_modules/@aws-sdk/signature-v4-multi-region": { "version": "3.674.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.674.0.tgz", - "integrity": "sha512-VMQWbtcbg4FV/fILrODADV21pPg9AghuEzQlW2kH0hCtacvBwFl7eBxIiCBLLtkNple+CVPJvyBcqOZdBkEv/w==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/middleware-sdk-s3": "3.674.0", @@ -900,8 +825,6 @@ }, "node_modules/@aws-sdk/token-providers": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.667.0.tgz", - "integrity": "sha512-ZecJlG8p6D4UTYlBHwOWX6nknVtw/OBJ3yPXTSajBjhUlj9lE2xvejI8gl4rqkyLXk7z3bki+KR4tATbMaM9yg==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -919,8 +842,6 @@ }, "node_modules/@aws-sdk/types": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.667.0.tgz", - "integrity": "sha512-gYq0xCsqFfQaSL/yT1Gl1vIUjtsg7d7RhnUfsXaHt8xTxOKRTdH9GjbesBjXOzgOvB0W0vfssfreSNGFlOOMJg==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -932,8 +853,6 @@ }, "node_modules/@aws-sdk/util-arn-parser": { "version": "3.568.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz", - "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -944,8 +863,6 @@ }, "node_modules/@aws-sdk/util-endpoints": { "version": "3.667.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.667.0.tgz", - "integrity": "sha512-X22SYDAuQJWnkF1/q17pkX3nGw5XMD9YEUbmt87vUnRq7iyJ3JOpl6UKOBeUBaL838wA5yzdbinmCITJ/VZ1QA==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -959,8 +876,6 @@ }, "node_modules/@aws-sdk/util-locate-window": { "version": "3.568.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", - "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -971,8 +886,6 @@ }, "node_modules/@aws-sdk/util-user-agent-browser": { "version": "3.670.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.670.0.tgz", - "integrity": "sha512-iRynWWazqEcCKwGMcQcywKTDLdLvqts1Yx474U64I9OKQXXwhOwhXbF5CAPSRta86lkVNAVYJa/0Bsv45pNn1A==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/types": "3.667.0", @@ -983,8 +896,6 @@ }, "node_modules/@aws-sdk/util-user-agent-node": { "version": "3.669.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.669.0.tgz", - "integrity": "sha512-9jxCYrgggy2xd44ZASqI7AMiRVaSiFp+06Kg8BQSU0ijKpBJlwcsqIS8pDT/n6LxuOw2eV5ipvM2C0r1iKzrGA==", "license": "Apache-2.0", "dependencies": { "@aws-sdk/middleware-user-agent": "3.669.0", @@ -1007,8 +918,6 @@ }, "node_modules/@aws-sdk/xml-builder": { "version": "3.662.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.662.0.tgz", - "integrity": "sha512-ikLkXn0igUpnJu2mCZjklvmcDGWT9OaLRv3JyC/cRkTaaSrblPjPM7KKsltxdMTLQ+v7fjCN0TsJpxphMfaOPA==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -1020,8 +929,6 @@ }, "node_modules/@babel/code-frame": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", - "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", "license": "MIT", "dependencies": { "@babel/helper-validator-identifier": "^7.27.1", @@ -1034,8 +941,6 @@ }, "node_modules/@babel/compat-data": { "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.3.tgz", - "integrity": "sha512-V42wFfx1ymFte+ecf6iXghnnP8kWTO+ZLXIyZq+1LAXHHvTZdVxicn4yiVYdYMGaCO3tmqub11AorKkv+iodqw==", "dev": true, "license": "MIT", "engines": { @@ -1044,8 +949,6 @@ }, "node_modules/@babel/core": { "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz", - "integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==", "dev": true, "license": "MIT", "dependencies": { @@ -1075,15 +978,11 @@ }, "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, "license": "MIT" }, "node_modules/@babel/eslint-parser": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.27.1.tgz", - "integrity": "sha512-q8rjOuadH0V6Zo4XLMkJ3RMQ9MSBqwaDByyYB0izsYdaIWGNLmEblbCOf1vyFHICcg16CD7Fsi51vcQnYxmt6Q==", "dev": true, "license": "MIT", "dependencies": { @@ -1101,8 +1000,6 @@ }, "node_modules/@babel/generator": { "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.3.tgz", - "integrity": "sha512-xnlJYj5zepml8NXtjkG0WquFUv8RskFqyFcVgTBp5k+NaA/8uw/K+OSVf8AMGw5e9HKP2ETd5xpK5MLZQD6b4Q==", "license": "MIT", "dependencies": { "@babel/parser": "^7.27.3", @@ -1117,8 +1014,6 @@ }, "node_modules/@babel/helper-annotate-as-pure": { "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", - "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", "dev": true, "license": "MIT", "dependencies": { @@ -1130,8 +1025,6 @@ }, "node_modules/@babel/helper-compilation-targets": { "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", - "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", "dev": true, "license": "MIT", "dependencies": { @@ -1147,8 +1040,6 @@ }, "node_modules/@babel/helper-module-imports": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", - "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", "license": "MIT", "dependencies": { "@babel/traverse": "^7.27.1", @@ -1160,8 +1051,6 @@ }, "node_modules/@babel/helper-module-transforms": { "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", - "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", "dev": true, "license": "MIT", "dependencies": { @@ -1178,8 +1067,6 @@ }, "node_modules/@babel/helper-plugin-utils": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", - "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", "dev": true, "license": "MIT", "engines": { @@ -1188,8 +1075,6 @@ }, "node_modules/@babel/helper-string-parser": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", "license": "MIT", "engines": { "node": ">=6.9.0" @@ -1197,8 +1082,6 @@ }, "node_modules/@babel/helper-validator-identifier": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", - "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", "license": "MIT", "engines": { "node": ">=6.9.0" @@ -1206,8 +1089,6 @@ }, "node_modules/@babel/helper-validator-option": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", "dev": true, "license": "MIT", "engines": { @@ -1216,8 +1097,6 @@ }, "node_modules/@babel/helpers": { "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.4.tgz", - "integrity": "sha512-Y+bO6U+I7ZKaM5G5rDUZiYfUvQPUibYmAFe7EnKdnKBbVXDZxvp+MWOH5gYciY0EPk4EScsuFMQBbEfpdRKSCQ==", "dev": true, "license": "MIT", "dependencies": { @@ -1230,8 +1109,6 @@ }, "node_modules/@babel/highlight": { "version": "7.25.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", - "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", "dev": true, "license": "MIT", "dependencies": { @@ -1246,8 +1123,6 @@ }, "node_modules/@babel/highlight/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, "license": "MIT", "dependencies": { @@ -1259,8 +1134,6 @@ }, "node_modules/@babel/highlight/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, "license": "MIT", "dependencies": { @@ -1274,8 +1147,6 @@ }, "node_modules/@babel/highlight/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, "license": "MIT", "dependencies": { @@ -1284,15 +1155,11 @@ }, "node_modules/@babel/highlight/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, "license": "MIT" }, "node_modules/@babel/highlight/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, "license": "MIT", "engines": { @@ -1301,8 +1168,6 @@ }, "node_modules/@babel/highlight/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, "license": "MIT", "engines": { @@ -1311,8 +1176,6 @@ }, "node_modules/@babel/highlight/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, "license": "MIT", "dependencies": { @@ -1324,8 +1187,6 @@ }, "node_modules/@babel/parser": { "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.4.tgz", - "integrity": "sha512-BRmLHGwpUqLFR2jzx9orBuX/ABDkj2jLKOXrHDTN2aOKL+jFDDKaRNo9nyYsIl9h/UE/7lMKdDjKQQyxKKDZ7g==", "license": "MIT", "dependencies": { "@babel/types": "^7.27.3" @@ -1339,8 +1200,6 @@ }, "node_modules/@babel/plugin-syntax-jsx": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", - "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", "dev": true, "license": "MIT", "dependencies": { @@ -1355,8 +1214,6 @@ }, "node_modules/@babel/plugin-transform-react-display-name": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.27.1.tgz", - "integrity": "sha512-p9+Vl3yuHPmkirRrg021XiP+EETmPMQTLr6Ayjj85RLNEbb3Eya/4VI0vAdzQG9SEAl2Lnt7fy5lZyMzjYoZQQ==", "dev": true, "license": "MIT", "dependencies": { @@ -1371,8 +1228,6 @@ }, "node_modules/@babel/plugin-transform-react-jsx": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz", - "integrity": "sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==", "dev": true, "license": "MIT", "dependencies": { @@ -1391,8 +1246,6 @@ }, "node_modules/@babel/plugin-transform-react-jsx-development": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz", - "integrity": "sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q==", "dev": true, "license": "MIT", "dependencies": { @@ -1407,8 +1260,6 @@ }, "node_modules/@babel/plugin-transform-react-jsx-self": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz", - "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==", "dev": true, "license": "MIT", "dependencies": { @@ -1423,8 +1274,6 @@ }, "node_modules/@babel/plugin-transform-react-jsx-source": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz", - "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==", "dev": true, "license": "MIT", "dependencies": { @@ -1439,8 +1288,6 @@ }, "node_modules/@babel/plugin-transform-react-pure-annotations": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz", - "integrity": "sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==", "dev": true, "license": "MIT", "dependencies": { @@ -1456,8 +1303,6 @@ }, "node_modules/@babel/preset-react": { "version": "7.27.1", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.27.1.tgz", - "integrity": "sha512-oJHWh2gLhU9dW9HHr42q0cI0/iHHXTLGe39qvpAZZzagHy0MzYLCnCVV0symeRvzmjHyVU7mw2K06E6u/JwbhA==", "dev": true, "license": "MIT", "dependencies": { @@ -1477,8 +1322,6 @@ }, "node_modules/@babel/runtime": { "version": "7.23.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz", - "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==", "license": "MIT", "dependencies": { "regenerator-runtime": "^0.14.0" @@ -1489,8 +1332,6 @@ }, "node_modules/@babel/template": { "version": "7.27.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", - "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", "license": "MIT", "dependencies": { "@babel/code-frame": "^7.27.1", @@ -1503,8 +1344,6 @@ }, "node_modules/@babel/traverse": { "version": "7.27.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.4.tgz", - "integrity": "sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==", "license": "MIT", "dependencies": { "@babel/code-frame": "^7.27.1", @@ -1521,8 +1360,6 @@ }, "node_modules/@babel/types": { "version": "7.27.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.3.tgz", - "integrity": "sha512-Y1GkI4ktrtvmawoSq+4FCVHNryea6uR+qUQy0AGxLSsjCX0nVmkYQMBLHDkXZuo5hGx7eYdnIaslsdBFm7zbUw==", "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.27.1", @@ -1534,8 +1371,6 @@ }, "node_modules/@cspotcode/source-map-support": { "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "0.3.9" @@ -1546,8 +1381,6 @@ }, "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", @@ -1556,8 +1389,6 @@ }, "node_modules/@digitalbazaar/http-client": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@digitalbazaar/http-client/-/http-client-1.2.0.tgz", - "integrity": "sha512-W9KQQ5pUJcaR0I4c2HPJC0a7kRbZApIorZgPnEDwMBgj16iQzutGLrCXYaZOmxqVLVNqqlQ4aUJh+HBQZy4W6Q==", "license": "BSD-3-Clause", "dependencies": { "esm": "^3.2.22", @@ -1569,16 +1400,15 @@ } }, "node_modules/@emotion/babel-plugin": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", - "integrity": "sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ==", - "license": "MIT", + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", "dependencies": { "@babel/helper-module-imports": "^7.16.7", "@babel/runtime": "^7.18.3", - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/serialize": "^1.1.2", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/serialize": "^1.3.3", "babel-plugin-macros": "^3.1.0", "convert-source-map": "^1.5.0", "escape-string-regexp": "^4.0.0", @@ -1588,52 +1418,47 @@ } }, "node_modules/@emotion/cache": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz", - "integrity": "sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ==", - "license": "MIT", - "dependencies": { - "@emotion/memoize": "^0.8.1", - "@emotion/sheet": "^1.2.2", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", + "dependencies": { + "@emotion/memoize": "^0.9.0", + "@emotion/sheet": "^1.4.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", "stylis": "4.2.0" } }, "node_modules/@emotion/hash": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz", - "integrity": "sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==", - "license": "MIT" + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", + "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==" }, "node_modules/@emotion/is-prop-valid": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", - "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", - "license": "MIT", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz", + "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==", "dependencies": { - "@emotion/memoize": "^0.8.1" + "@emotion/memoize": "^0.9.0" } }, "node_modules/@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==", - "license": "MIT" + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" }, "node_modules/@emotion/react": { - "version": "11.11.3", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.11.3.tgz", - "integrity": "sha512-Cnn0kuq4DoONOMcnoVsTOR8E+AdnKFf//6kUWc4LCdnxj31pZWn7rIULd6Y7/Js1PiPHzn7SKCM9vB/jBni8eA==", - "license": "MIT", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/cache": "^11.11.0", - "@emotion/serialize": "^1.1.3", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1", - "@emotion/weak-memoize": "^0.3.1", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", "hoist-non-react-statics": "^3.3.1" }, "peerDependencies": { @@ -1646,36 +1471,33 @@ } }, "node_modules/@emotion/serialize": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.3.tgz", - "integrity": "sha512-iD4D6QVZFDhcbH0RAG1uVu1CwVLMWUkCvAqqlewO/rxf8+87yIBAlt4+AxMiiKPLs5hFc0owNk/sLLAOROw3cA==", - "license": "MIT", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", "dependencies": { - "@emotion/hash": "^0.9.1", - "@emotion/memoize": "^0.8.1", - "@emotion/unitless": "^0.8.1", - "@emotion/utils": "^1.2.1", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/unitless": "^0.10.0", + "@emotion/utils": "^1.4.2", "csstype": "^3.0.2" } }, "node_modules/@emotion/sheet": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz", - "integrity": "sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==", - "license": "MIT" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", + "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==" }, "node_modules/@emotion/styled": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz", - "integrity": "sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==", - "license": "MIT", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.0.tgz", + "integrity": "sha512-XxfOnXFffatap2IyCeJyNov3kiDQWoR08gPUQxvbL7fxKryGBKUZUkG6Hz48DZwVrJSVh9sJboyV1Ds4OW6SgA==", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.11.0", - "@emotion/is-prop-valid": "^1.2.1", - "@emotion/serialize": "^1.1.2", - "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@emotion/utils": "^1.2.1" + "@emotion/babel-plugin": "^11.13.5", + "@emotion/is-prop-valid": "^1.3.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2" }, "peerDependencies": { "@emotion/react": "^11.0.0-rc.0", @@ -1688,461 +1510,382 @@ } }, "node_modules/@emotion/unitless": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz", - "integrity": "sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ==", - "license": "MIT" + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", + "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==" }, "node_modules/@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz", - "integrity": "sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw==", - "license": "MIT", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", "peerDependencies": { "react": ">=16.8.0" } }, "node_modules/@emotion/utils": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz", - "integrity": "sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg==", - "license": "MIT" + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==" }, "node_modules/@emotion/weak-memoize": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz", - "integrity": "sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==", - "license": "MIT" - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.5.tgz", - "integrity": "sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" - } + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", + "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==" }, "node_modules/@esbuild/android-arm": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.5.tgz", - "integrity": "sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/android-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.5.tgz", - "integrity": "sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/android-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.5.tgz", - "integrity": "sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.5.tgz", - "integrity": "sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.5.tgz", - "integrity": "sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.5.tgz", - "integrity": "sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.5.tgz", - "integrity": "sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-arm": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.5.tgz", - "integrity": "sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.5.tgz", - "integrity": "sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.5.tgz", - "integrity": "sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", "cpu": [ "ia32" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.5.tgz", - "integrity": "sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", "cpu": [ "loong64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.5.tgz", - "integrity": "sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", "cpu": [ "mips64el" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.5.tgz", - "integrity": "sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", "cpu": [ "ppc64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.5.tgz", - "integrity": "sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", "cpu": [ "riscv64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.5.tgz", - "integrity": "sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", "cpu": [ "s390x" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/linux-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.5.tgz", - "integrity": "sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" ], "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.5.tgz", - "integrity": "sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.5.tgz", - "integrity": "sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "netbsd" ], "engines": { - "node": ">=18" - } - }, - "node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.5.tgz", - "integrity": "sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.5.tgz", - "integrity": "sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openbsd" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.5.tgz", - "integrity": "sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "sunos" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.5.tgz", - "integrity": "sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.5.tgz", - "integrity": "sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", "cpu": [ "ia32" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@esbuild/win32-x64": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.5.tgz", - "integrity": "sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" ], "engines": { - "node": ">=18" + "node": ">=12" } }, "node_modules/@eslint/eslintrc": { "version": "0.4.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", - "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", "dev": true, "license": "MIT", "dependencies": { @@ -2162,8 +1905,6 @@ }, "node_modules/@eslint/eslintrc/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, "license": "MIT", "dependencies": { @@ -2179,8 +1920,6 @@ }, "node_modules/@eslint/eslintrc/node_modules/globals": { "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "license": "MIT", "dependencies": { @@ -2195,15 +1934,11 @@ }, "node_modules/@eslint/eslintrc/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, "license": "MIT" }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { @@ -2213,10 +1948,27 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@ffmpeg/ffmpeg": { + "version": "0.9.8", + "resolved": "https://registry.npmjs.org/@ffmpeg/ffmpeg/-/ffmpeg-0.9.8.tgz", + "integrity": "sha512-QradleJx78hHJBtI1wRsus1L1jxQB3v4h6k8c3CERI9fssm+NSSppuofmsOei7uq7iQEYq3oK9tJNAyEsRoNng==", + "dependencies": { + "is-url": "^1.2.4", + "node-fetch": "^2.6.1", + "regenerator-runtime": "^0.13.7", + "resolve-url": "^0.2.1" + }, + "engines": { + "node": ">=12.16.1" + } + }, + "node_modules/@ffmpeg/ffmpeg/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==" + }, "node_modules/@fingerprintjs/fingerprintjs": { "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@fingerprintjs/fingerprintjs/-/fingerprintjs-4.2.2.tgz", - "integrity": "sha512-scD+pDgNZW78LuFAr7ms2yxmDx2NWC4+K5iiOjPT2ZlTlHFbLsORUzLJI2rcKicxxLtHbvf3A7BU1drVr4iHGg==", "license": "BUSL-1.1", "dependencies": { "tslib": "^2.4.1" @@ -2224,8 +1976,6 @@ }, "node_modules/@floating-ui/core": { "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz", - "integrity": "sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==", "license": "MIT", "dependencies": { "@floating-ui/utils": "^0.2.1" @@ -2233,8 +1983,6 @@ }, "node_modules/@floating-ui/dom": { "version": "1.6.1", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.1.tgz", - "integrity": "sha512-iA8qE43/H5iGozC3W0YSnVSW42Vh522yyM1gj+BqRwVsTNOyr231PsXDaV04yT39PsO0QL2QpbI/M0ZaLUQgRQ==", "license": "MIT", "dependencies": { "@floating-ui/core": "^1.6.0", @@ -2243,8 +1991,6 @@ }, "node_modules/@floating-ui/react-dom": { "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.8.tgz", - "integrity": "sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==", "license": "MIT", "dependencies": { "@floating-ui/dom": "^1.6.1" @@ -2256,21 +2002,14 @@ }, "node_modules/@floating-ui/utils": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz", - "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==", "license": "MIT" }, "node_modules/@gilbarbara/deep-equal": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.3.1.tgz", - "integrity": "sha512-I7xWjLs2YSVMc5gGx1Z3ZG1lgFpITPndpi8Ku55GeEIKpACCPQNS/OTqQbxgTCfq0Ncvcc+CrFov96itVh6Qvw==", "license": "MIT" }, "node_modules/@humanwhocodes/config-array": { "version": "0.5.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", - "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "deprecated": "Use @eslint/config-array instead", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -2284,16 +2023,11 @@ }, "node_modules/@humanwhocodes/object-schema": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "deprecated": "Use @eslint/object-schema instead", "dev": true, "license": "BSD-3-Clause" }, "node_modules/@jest/expect-utils": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz", - "integrity": "sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==", "license": "MIT", "dependencies": { "jest-get-type": "^29.4.3" @@ -2304,8 +2038,6 @@ }, "node_modules/@jest/schemas": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz", - "integrity": "sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==", "license": "MIT", "dependencies": { "@sinclair/typebox": "^0.25.16" @@ -2316,8 +2048,6 @@ }, "node_modules/@jest/types": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz", - "integrity": "sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA==", "license": "MIT", "dependencies": { "@jest/schemas": "^29.4.3", @@ -2333,8 +2063,6 @@ }, "node_modules/@jest/types/node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -2349,8 +2077,6 @@ }, "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==", "license": "MIT", "dependencies": { "@jridgewell/set-array": "^1.2.1", @@ -2363,8 +2089,6 @@ }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", "license": "MIT", "engines": { "node": ">=6.0.0" @@ -2372,8 +2096,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">=6.0.0" @@ -2381,14 +2103,10 @@ }, "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==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", @@ -2397,9 +2115,6 @@ }, "node_modules/@mui/base": { "version": "5.0.0-beta.34", - "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.34.tgz", - "integrity": "sha512-e2mbTGTtReD/y5RFwnhkl1Tgl3XwgJhY040IlfkTVaU9f5LWrVhEnpRsYXu3B1CtLrwiWs4cu7aMHV9yRd4jpw==", - "deprecated": "This package has been replaced by @base-ui-components/react", "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.9", @@ -2430,8 +2145,6 @@ }, "node_modules/@mui/core-downloads-tracker": { "version": "5.15.7", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.7.tgz", - "integrity": "sha512-AuF+Wo2Mp/edaO6vJnWjg+gj4tzEz5ChMZnAQpc22DXpSvM8ddgGcZvM7D7F99pIBoSv8ub+Iz0viL+yuGVmhg==", "license": "MIT", "funding": { "type": "opencollective", @@ -2440,8 +2153,6 @@ }, "node_modules/@mui/icons-material": { "version": "5.15.7", - "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.15.7.tgz", - "integrity": "sha512-EDAc8TVJGIA/imAvR3u4nANl2W5h3QeHieu2gK7Ypez/nIA55p08tHjf8UrMXEpxCAvfZO6piY9S9uaxETdicA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.9" @@ -2466,8 +2177,6 @@ }, "node_modules/@mui/material": { "version": "5.15.7", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.15.7.tgz", - "integrity": "sha512-l6+AiKZH3iOJmZCnlpel8ghYQe9Lq0BEuKP8fGj3g5xz4arO9GydqYAtLPMvuHKtArj8lJGNuT2yHYxmejincA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.9", @@ -2511,8 +2220,6 @@ }, "node_modules/@mui/private-theming": { "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.6.tgz", - "integrity": "sha512-rAk+Rh8Clg7Cd7shZhyt2HGTTE5wYKNSJ5sspf28Fqm/PZ69Er9o6KX25g03/FG2dfpg5GCwZh/xOojiTfm3hw==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.9", @@ -2538,8 +2245,6 @@ }, "node_modules/@mui/styled-engine": { "version": "5.15.7", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.15.7.tgz", - "integrity": "sha512-ixSdslOjK1kzdGcxqj7O3d14By/LPQ7EWknsViQ8RaeT863EAQemS+zvUJDTcOpkfJh6q6gPnYMIb2TJCs9eWA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.9", @@ -2570,9 +2275,6 @@ }, "node_modules/@mui/styles": { "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/styles/-/styles-5.16.7.tgz", - "integrity": "sha512-FfXhHP/2MlqH+vLs2tIHMeCChmqSRgkOALVNLKkPrDsvtoq5J8OraOutCn1scpvRjr9mO8ZhW6jKx2t/vUDxtQ==", - "deprecated": "Deprecated, check the migration instruction in https://mui.com/material-ui/migration/migrating-from-jss/", "dev": true, "license": "MIT", "dependencies": { @@ -2613,8 +2315,6 @@ }, "node_modules/@mui/system": { "version": "5.15.7", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.15.7.tgz", - "integrity": "sha512-9alZ4/dLxsTwUOdqakgzxiL5YW6ntqj0CfzWImgWnBMTZhgGcPsbYpBLniNkkk7/jptma4/bykWXHwju/ls/pg==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.9", @@ -2653,8 +2353,6 @@ }, "node_modules/@mui/types": { "version": "7.2.18", - "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.18.tgz", - "integrity": "sha512-uvK9dWeyCJl/3ocVnTOS6nlji/Knj8/tVqVX03UVTpdmTJYu/s4jtDd9Kvv0nRGE0CUSNW1UYAci7PYypjealg==", "license": "MIT", "peerDependencies": { "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" @@ -2667,8 +2365,6 @@ }, "node_modules/@mui/utils": { "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.6.tgz", - "integrity": "sha512-tWiQqlhxAt3KENNiSRL+DIn9H5xNVK6Jjf70x3PnfQPz1MPBdh7yyIcAyVBT9xiw7hP3SomRhPR7hzBMBCjqEA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.23.9", @@ -2697,14 +2393,10 @@ }, "node_modules/@mui/utils/node_modules/react-is": { "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", "license": "MIT" }, "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", "dev": true, "license": "MIT", "dependencies": { @@ -2713,8 +2405,6 @@ }, "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==", "license": "MIT", "funding": { "type": "opencollective", @@ -2723,8 +2413,6 @@ }, "node_modules/@project-sunbird/client-services": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@project-sunbird/client-services/-/client-services-5.1.2.tgz", - "integrity": "sha512-E2xvnYrenDIyyIMFYLy3xnsWQ0yG46eGEUFXUwmaL5BJK7qsjOU4zHHMqAhQYjEEJTZ9iDhLgcRsjf8oL8RhRQ==", "license": "MIT", "dependencies": { "@project-sunbird/telemetry-sdk": "0.0.26", @@ -2744,8 +2432,6 @@ }, "node_modules/@project-sunbird/telemetry-sdk": { "version": "0.0.26", - "resolved": "https://registry.npmjs.org/@project-sunbird/telemetry-sdk/-/telemetry-sdk-0.0.26.tgz", - "integrity": "sha512-8r8tf+YN+z8A4KHBmL8/wxDIKGkASDHMMxyhlI9/iWv83sueoN5qHB6QnqgtIRyEdFjt4Tum5u18/oB71Bb0PQ==", "license": "MIT", "dependencies": { "grunt-karma": "^0.12.2", @@ -2754,8 +2440,6 @@ }, "node_modules/@redux-saga/core": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.3.0.tgz", - "integrity": "sha512-L+i+qIGuyWn7CIg7k1MteHGfttKPmxwZR5E7OsGikCL2LzYA0RERlaUY00Y3P3ZV2EYgrsYlBrGs6cJP5OKKqA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.6.3", @@ -2773,14 +2457,10 @@ }, "node_modules/@redux-saga/deferred": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.2.1.tgz", - "integrity": "sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g==", "license": "MIT" }, "node_modules/@redux-saga/delay-p": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.2.1.tgz", - "integrity": "sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w==", "license": "MIT", "dependencies": { "@redux-saga/symbols": "^1.1.3" @@ -2788,8 +2468,6 @@ }, "node_modules/@redux-saga/is": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.1.3.tgz", - "integrity": "sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q==", "license": "MIT", "dependencies": { "@redux-saga/symbols": "^1.1.3", @@ -2798,20 +2476,14 @@ }, "node_modules/@redux-saga/symbols": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.1.3.tgz", - "integrity": "sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg==", "license": "MIT" }, "node_modules/@redux-saga/types": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.2.1.tgz", - "integrity": "sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA==", "license": "MIT" }, "node_modules/@reduxjs/toolkit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.3.0.tgz", - "integrity": "sha512-WC7Yd6cNGfHx8zf+iu+Q1UPTfEcXhQ+ATi7CV1hlrSAaQBdlPzg7Ww/wJHNQem7qG9rxmWoFCDCPubSvFObGzA==", "license": "MIT", "dependencies": { "immer": "^10.0.3", @@ -2834,14 +2506,10 @@ }, "node_modules/@reduxjs/toolkit/node_modules/redux": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz", - "integrity": "sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w==", "license": "MIT" }, "node_modules/@remix-run/router": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.3.2.tgz", - "integrity": "sha512-t54ONhl/h75X94SWsHGQ4G/ZrCEguKSRQr7DrjTciJXW0YU1QhlwYeycvK5JgkzlxmvrK7wq1NB/PLtHxoiDcA==", "license": "MIT", "engines": { "node": ">=14" @@ -2849,370 +2517,74 @@ }, "node_modules/@rolldown/pluginutils": { "version": "1.0.0-beta.9", - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.9.tgz", - "integrity": "sha512-e9MeMtVWo186sgvFFJOPGy7/d2j2mZhLJIdVW0C/xDluuOvymEATqz6zKsP0ZmXGzQtqlyjz5sC1sYQUoJG98w==", "dev": true, "license": "MIT" }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.41.1.tgz", - "integrity": "sha512-NELNvyEWZ6R9QMkiytB4/L4zSEaBC03KIXEghptLGLZWJ6VPrL63ooZQCOnlx36aQPGhzuOMwDerC1Eb2VmrLw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] + "node_modules/@sinclair/typebox": { + "version": "0.25.24", + "license": "MIT" }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.41.1.tgz", - "integrity": "sha512-DXdQe1BJ6TK47ukAoZLehRHhfKnKg9BjnQYUu9gzhI8Mwa1d2fzxA1aw2JixHVl403bwp1+/o/NhhHtxWJBgEA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] + "node_modules/@smithy/abort-controller": { + "version": "3.1.5", + "license": "Apache-2.0", + "dependencies": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.41.1.tgz", - "integrity": "sha512-5afxvwszzdulsU2w8JKWwY8/sJOLPzf0e1bFuvcW5h9zsEg+RQAojdW0ux2zyYAz7R8HvvzKCjLNJhVq965U7w==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] + "node_modules/@smithy/chunked-blob-reader": { + "version": "3.0.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.6.2" + } }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.41.1.tgz", - "integrity": "sha512-egpJACny8QOdHNNMZKf8xY0Is6gIMz+tuqXlusxquWu3F833DcMwmGM7WlvCO9sB3OsPjdC4U0wHw5FabzCGZg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] + "node_modules/@smithy/chunked-blob-reader-native": { + "version": "3.0.0", + "license": "Apache-2.0", + "dependencies": { + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" + } }, - "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.41.1.tgz", - "integrity": "sha512-DBVMZH5vbjgRk3r0OzgjS38z+atlupJ7xfKIDJdZZL6sM6wjfDNo64aowcLPKIx7LMQi8vybB56uh1Ftck/Atg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] + "node_modules/@smithy/config-resolver": { + "version": "3.0.9", + "license": "Apache-2.0", + "dependencies": { + "@smithy/node-config-provider": "^3.1.8", + "@smithy/types": "^3.5.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.7", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } }, - "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.41.1.tgz", - "integrity": "sha512-3FkydeohozEskBxNWEIbPfOE0aqQgB6ttTkJ159uWOFn42VLyfAiyD9UK5mhu+ItWzft60DycIN1Xdgiy8o/SA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.41.1.tgz", - "integrity": "sha512-wC53ZNDgt0pqx5xCAgNunkTzFE8GTgdZ9EwYGVcg+jEjJdZGtq9xPjDnFgfFozQI/Xm1mh+D9YlYtl+ueswNEg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.41.1.tgz", - "integrity": "sha512-jwKCca1gbZkZLhLRtsrka5N8sFAaxrGz/7wRJ8Wwvq3jug7toO21vWlViihG85ei7uJTpzbXZRcORotE+xyrLA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.41.1.tgz", - "integrity": "sha512-g0UBcNknsmmNQ8V2d/zD2P7WWfJKU0F1nu0k5pW4rvdb+BIqMm8ToluW/eeRmxCared5dD76lS04uL4UaNgpNA==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.41.1.tgz", - "integrity": "sha512-XZpeGB5TKEZWzIrj7sXr+BEaSgo/ma/kCgrZgL0oo5qdB1JlTzIYQKel/RmhT6vMAvOdM2teYlAaOGJpJ9lahg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.41.1.tgz", - "integrity": "sha512-bkCfDJ4qzWfFRCNt5RVV4DOw6KEgFTUZi2r2RuYhGWC8WhCA8lCAJhDeAmrM/fdiAH54m0mA0Vk2FGRPyzI+tw==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.41.1.tgz", - "integrity": "sha512-3mr3Xm+gvMX+/8EKogIZSIEF0WUu0HL9di+YWlJpO8CQBnoLAEL/roTCxuLncEdgcfJcvA4UMOf+2dnjl4Ut1A==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.41.1.tgz", - "integrity": "sha512-3rwCIh6MQ1LGrvKJitQjZFuQnT2wxfU+ivhNBzmxXTXPllewOF7JR1s2vMX/tWtUYFgphygxjqMl76q4aMotGw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.41.1.tgz", - "integrity": "sha512-LdIUOb3gvfmpkgFZuccNa2uYiqtgZAz3PTzjuM5bH3nvuy9ty6RGc/Q0+HDFrHrizJGVpjnTZ1yS5TNNjFlklw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.41.1.tgz", - "integrity": "sha512-oIE6M8WC9ma6xYqjvPhzZYk6NbobIURvP/lEbh7FWplcMO6gn7MM2yHKA1eC/GvYwzNKK/1LYgqzdkZ8YFxR8g==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.41.1.tgz", - "integrity": "sha512-cWBOvayNvA+SyeQMp79BHPK8ws6sHSsYnK5zDcsC3Hsxr1dgTABKjMnMslPq1DvZIp6uO7kIWhiGwaTdR4Og9A==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.41.1.tgz", - "integrity": "sha512-y5CbN44M+pUCdGDlZFzGGBSKCA4A/J2ZH4edTYSSxFg7ce1Xt3GtydbVKWLlzL+INfFIZAEg1ZV6hh9+QQf9YQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.41.1.tgz", - "integrity": "sha512-lZkCxIrjlJlMt1dLO/FbpZbzt6J/A8p4DnqzSa4PWqPEUUUnzXLeki/iyPLfV0BmHItlYgHUqJe+3KiyydmiNQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.41.1.tgz", - "integrity": "sha512-+psFT9+pIh2iuGsxFYYa/LhS5MFKmuivRsx9iPJWNSGbh2XVEjk90fmpUEjCnILPEPJnikAU6SFDiEUyOv90Pg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.41.1.tgz", - "integrity": "sha512-Wq2zpapRYLfi4aKxf2Xff0tN+7slj2d4R87WEzqw7ZLsVvO5zwYCIuEGSZYiK41+GlwUo1HiR+GdkLEJnCKTCw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@sinclair/typebox": { - "version": "0.25.24", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz", - "integrity": "sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ==", - "license": "MIT" - }, - "node_modules/@smithy/abort-controller": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.5.tgz", - "integrity": "sha512-DhNPnqTqPoG8aZ5dWkFOgsuY+i0GQ3CI6hMmvCoduNsnU9gUZWZBwGfDQsTTB7NvFPkom1df7jMIJWU90kuXXg==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^3.5.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@smithy/chunked-blob-reader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz", - "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - } - }, - "node_modules/@smithy/chunked-blob-reader-native": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz", - "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/util-base64": "^3.0.0", - "tslib": "^2.6.2" - } - }, - "node_modules/@smithy/config-resolver": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.9.tgz", - "integrity": "sha512-5d9oBf40qC7n2xUoHmntKLdqsyTMMo/r49+eqSIjJ73eDfEtljAxEhzIQ3bkgXJtR3xiv7YzMT/3FF3ORkjWdg==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/node-config-provider": "^3.1.8", - "@smithy/types": "^3.5.0", - "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.7", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@smithy/core": { - "version": "2.4.8", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.8.tgz", - "integrity": "sha512-x4qWk7p/a4dcf7Vxb2MODIf4OIcqNbK182WxRvZ/3oKPrf/6Fdic5sSElhO1UtXpWKBazWfqg0ZEK9xN1DsuHA==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/middleware-endpoint": "^3.1.4", - "@smithy/middleware-retry": "^3.0.23", - "@smithy/middleware-serde": "^3.0.7", - "@smithy/protocol-http": "^4.1.4", - "@smithy/smithy-client": "^3.4.0", - "@smithy/types": "^3.5.0", - "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-middleware": "^3.0.7", - "@smithy/util-utf8": "^3.0.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=16.0.0" - } + "node_modules/@smithy/core": { + "version": "2.4.8", + "license": "Apache-2.0", + "dependencies": { + "@smithy/middleware-endpoint": "^3.1.4", + "@smithy/middleware-retry": "^3.0.23", + "@smithy/middleware-serde": "^3.0.7", + "@smithy/protocol-http": "^4.1.4", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } }, "node_modules/@smithy/credential-provider-imds": { "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.4.tgz", - "integrity": "sha512-S9bb0EIokfYEuar4kEbLta+ivlKCWOCFsLZuilkNy9i0uEUEHSi47IFLPaxqqCl+0ftKmcOTHayY5nQhAuq7+w==", "license": "Apache-2.0", "dependencies": { "@smithy/node-config-provider": "^3.1.8", @@ -3227,8 +2599,6 @@ }, "node_modules/@smithy/eventstream-codec": { "version": "3.1.6", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.6.tgz", - "integrity": "sha512-SBiOYPBH+5wOyPS7lfI150ePfGLhnp/eTu5RnV9xvhGvRiKfnl6HzRK9wehBph+il8FxS9KTeadx7Rcmf1GLPQ==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", @@ -3239,8 +2609,6 @@ }, "node_modules/@smithy/eventstream-serde-browser": { "version": "3.0.10", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.10.tgz", - "integrity": "sha512-1i9aMY6Pl/SmA6NjvidxnfBLHMPzhKu2BP148pEt5VwhMdmXn36PE2kWKGa9Hj8b0XGtCTRucpCncylevCtI7g==", "license": "Apache-2.0", "dependencies": { "@smithy/eventstream-serde-universal": "^3.0.9", @@ -3253,8 +2621,6 @@ }, "node_modules/@smithy/eventstream-serde-config-resolver": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.7.tgz", - "integrity": "sha512-eVzhGQBPEqXXYHvIUku0jMTxd4gDvenRzUQPTmKVWdRvp9JUCKrbAXGQRYiGxUYq9+cqQckRm0wq3kTWnNtDhw==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3266,8 +2632,6 @@ }, "node_modules/@smithy/eventstream-serde-node": { "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.9.tgz", - "integrity": "sha512-JE0Guqvt0xsmfQ5y1EI342/qtJqznBv8cJqkHZV10PwC8GWGU5KNgFbQnsVCcX+xF+qIqwwfRmeWoJCjuOLmng==", "license": "Apache-2.0", "dependencies": { "@smithy/eventstream-serde-universal": "^3.0.9", @@ -3280,8 +2644,6 @@ }, "node_modules/@smithy/eventstream-serde-universal": { "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.9.tgz", - "integrity": "sha512-bydfgSisfepCufw9kCEnWRxqxJFzX/o8ysXWv+W9F2FIyiaEwZ/D8bBKINbh4ONz3i05QJ1xE7A5OKYvgJsXaw==", "license": "Apache-2.0", "dependencies": { "@smithy/eventstream-codec": "^3.1.6", @@ -3294,8 +2656,6 @@ }, "node_modules/@smithy/fetch-http-handler": { "version": "3.2.9", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.9.tgz", - "integrity": "sha512-hYNVQOqhFQ6vOpenifFME546f0GfJn2OiQ3M0FDmuUu8V/Uiwy2wej7ZXxFBNqdx0R5DZAqWM1l6VRhGz8oE6A==", "license": "Apache-2.0", "dependencies": { "@smithy/protocol-http": "^4.1.4", @@ -3307,8 +2667,6 @@ }, "node_modules/@smithy/hash-blob-browser": { "version": "3.1.6", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.6.tgz", - "integrity": "sha512-BKNcMIaeZ9lB67sgo88iCF4YB35KT8X2dNJ8DqrtZNTgN6tUDYBKThzfGtos/mnZkGkW91AYHisESHmSiYQmKw==", "license": "Apache-2.0", "dependencies": { "@smithy/chunked-blob-reader": "^3.0.0", @@ -3319,8 +2677,6 @@ }, "node_modules/@smithy/hash-node": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.7.tgz", - "integrity": "sha512-SAGHN+QkrwcHFjfWzs/czX94ZEjPJ0CrWJS3M43WswDXVEuP4AVy9gJ3+AF6JQHZD13bojmuf/Ap/ItDeZ+Qfw==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3334,8 +2690,6 @@ }, "node_modules/@smithy/hash-stream-node": { "version": "3.1.6", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.6.tgz", - "integrity": "sha512-sFSSt7cmCpFWZPfVx7k80Bgb1K2VJ27VmMxH8X+dDhp7Wv8IBgID4K2VK5ehMJROF8hQgcj4WywnkHIwX/xlwQ==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3348,8 +2702,6 @@ }, "node_modules/@smithy/invalid-dependency": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.7.tgz", - "integrity": "sha512-Bq00GsAhHeYSuZX8Kpu4sbI9agH2BNYnqUmmbTGWOhki9NVsWn2jFr896vvoTMH8KAjNX/ErC/8t5QHuEXG+IA==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3358,8 +2710,6 @@ }, "node_modules/@smithy/is-array-buffer": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", - "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -3370,8 +2720,6 @@ }, "node_modules/@smithy/md5-js": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.7.tgz", - "integrity": "sha512-+wco9IN9uOW4tNGkZIqTR6IXyfO7Z8A+IOq82QCRn/f/xcmt7H1fXwmQVbfDSvbeFwfNnhv7s+u0G9PzPG6o2w==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3381,8 +2729,6 @@ }, "node_modules/@smithy/middleware-content-length": { "version": "3.0.9", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.9.tgz", - "integrity": "sha512-t97PidoGElF9hTtLCrof32wfWMqC5g2SEJNxaVH3NjlatuNGsdxXRYO/t+RPnxA15RpYiS0f+zG7FuE2DeGgjA==", "license": "Apache-2.0", "dependencies": { "@smithy/protocol-http": "^4.1.4", @@ -3395,8 +2741,6 @@ }, "node_modules/@smithy/middleware-endpoint": { "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.4.tgz", - "integrity": "sha512-/ChcVHekAyzUbyPRI8CzPPLj6y8QRAfJngWcLMgsWxKVzw/RzBV69mSOzJYDD3pRwushA1+5tHtPF8fjmzBnrQ==", "license": "Apache-2.0", "dependencies": { "@smithy/middleware-serde": "^3.0.7", @@ -3413,8 +2757,6 @@ }, "node_modules/@smithy/middleware-retry": { "version": "3.0.23", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.23.tgz", - "integrity": "sha512-x9PbGXxkcXIpm6L26qRSCC+eaYcHwybRmqU8LO/WM2RRlW0g8lz6FIiKbKgGvHuoK3dLZRiQVSQJveiCzwnA5A==", "license": "Apache-2.0", "dependencies": { "@smithy/node-config-provider": "^3.1.8", @@ -3433,8 +2775,6 @@ }, "node_modules/@smithy/middleware-serde": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.7.tgz", - "integrity": "sha512-VytaagsQqtH2OugzVTq4qvjkLNbWehHfGcGr0JLJmlDRrNCeZoWkWsSOw1nhS/4hyUUWF/TLGGml4X/OnEep5g==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3446,8 +2786,6 @@ }, "node_modules/@smithy/middleware-stack": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.7.tgz", - "integrity": "sha512-EyTbMCdqS1DoeQsO4gI7z2Gzq1MoRFAeS8GkFYIwbedB7Lp5zlLHJdg+56tllIIG5Hnf9ZWX48YKSHlsKvugGA==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3459,8 +2797,6 @@ }, "node_modules/@smithy/node-config-provider": { "version": "3.1.8", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.8.tgz", - "integrity": "sha512-E0rU0DglpeJn5ge64mk8wTGEXcQwmpUTY5Zr7IzTpDLmHKiIamINERNZYrPQjg58Ck236sEKSwRSHA4CwshU6Q==", "license": "Apache-2.0", "dependencies": { "@smithy/property-provider": "^3.1.7", @@ -3474,8 +2810,6 @@ }, "node_modules/@smithy/node-http-handler": { "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.2.4.tgz", - "integrity": "sha512-49reY3+JgLMFNm7uTAKBWiKCA6XSvkNp9FqhVmusm2jpVnHORYFeFZ704LShtqWfjZW/nhX+7Iexyb6zQfXYIQ==", "license": "Apache-2.0", "dependencies": { "@smithy/abort-controller": "^3.1.5", @@ -3490,8 +2824,6 @@ }, "node_modules/@smithy/property-provider": { "version": "3.1.7", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.7.tgz", - "integrity": "sha512-QfzLi1GPMisY7bAM5hOUqBdGYnY5S2JAlr201pghksrQv139f8iiiMalXtjczIP5f6owxFn3MINLNUNvUkgtPw==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3503,8 +2835,6 @@ }, "node_modules/@smithy/protocol-http": { "version": "4.1.4", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.4.tgz", - "integrity": "sha512-MlWK8eqj0JlpZBnWmjQLqmFp71Ug00P+m72/1xQB3YByXD4zZ+y9N4hYrR0EDmrUCZIkyATWHOXFgtavwGDTzQ==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3516,8 +2846,6 @@ }, "node_modules/@smithy/querystring-builder": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.7.tgz", - "integrity": "sha512-65RXGZZ20rzqqxTsChdqSpbhA6tdt5IFNgG6o7e1lnPVLCe6TNWQq4rTl4N87hTDD8mV4IxJJnvyE7brbnRkQw==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3530,8 +2858,6 @@ }, "node_modules/@smithy/querystring-parser": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.7.tgz", - "integrity": "sha512-Fouw4KJVWqqUVIu1gZW8BH2HakwLz6dvdrAhXeXfeymOBrZw+hcqaWs+cS1AZPVp4nlbeIujYrKA921ZW2WMPA==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3543,8 +2869,6 @@ }, "node_modules/@smithy/service-error-classification": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.7.tgz", - "integrity": "sha512-91PRkTfiBf9hxkIchhRKJfl1rsplRDyBnmyFca3y0Z3x/q0JJN480S83LBd8R6sBCkm2bBbqw2FHp0Mbh+ecSA==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0" @@ -3555,8 +2879,6 @@ }, "node_modules/@smithy/shared-ini-file-loader": { "version": "3.1.8", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.8.tgz", - "integrity": "sha512-0NHdQiSkeGl0ICQKcJQ2lCOKH23Nb0EaAa7RDRId6ZqwXkw4LJyIyZ0t3iusD4bnKYDPLGy2/5e2rfUhrt0Acw==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3568,8 +2890,6 @@ }, "node_modules/@smithy/signature-v4": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.2.0.tgz", - "integrity": "sha512-LafbclHNKnsorMgUkKm7Tk7oJ7xizsZ1VwqhGKqoCIrXh4fqDDp73fK99HOEEgcsQbtemmeY/BPv0vTVYYUNEQ==", "license": "Apache-2.0", "dependencies": { "@smithy/is-array-buffer": "^3.0.0", @@ -3587,8 +2907,6 @@ }, "node_modules/@smithy/smithy-client": { "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.4.0.tgz", - "integrity": "sha512-nOfJ1nVQsxiP6srKt43r2My0Gp5PLWCW2ASqUioxIiGmu6d32v4Nekidiv5qOmmtzIrmaD+ADX5SKHUuhReeBQ==", "license": "Apache-2.0", "dependencies": { "@smithy/middleware-endpoint": "^3.1.4", @@ -3604,8 +2922,6 @@ }, "node_modules/@smithy/types": { "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.5.0.tgz", - "integrity": "sha512-QN0twHNfe8mNJdH9unwsCK13GURU7oEAZqkBI+rsvpv1jrmserO+WnLE7jidR9W/1dxwZ0u/CB01mV2Gms/K2Q==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -3616,8 +2932,6 @@ }, "node_modules/@smithy/url-parser": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.7.tgz", - "integrity": "sha512-70UbSSR8J97c1rHZOWhl+VKiZDqHWxs/iW8ZHrHp5fCCPLSBE7GcUlUvKSle3Ca+J9LLbYCj/A79BxztBvAfpA==", "license": "Apache-2.0", "dependencies": { "@smithy/querystring-parser": "^3.0.7", @@ -3627,8 +2941,6 @@ }, "node_modules/@smithy/util-base64": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", - "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", "license": "Apache-2.0", "dependencies": { "@smithy/util-buffer-from": "^3.0.0", @@ -3641,8 +2953,6 @@ }, "node_modules/@smithy/util-body-length-browser": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", - "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -3650,8 +2960,6 @@ }, "node_modules/@smithy/util-body-length-node": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", - "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -3662,8 +2970,6 @@ }, "node_modules/@smithy/util-buffer-from": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", - "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", "license": "Apache-2.0", "dependencies": { "@smithy/is-array-buffer": "^3.0.0", @@ -3675,8 +2981,6 @@ }, "node_modules/@smithy/util-config-provider": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", - "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -3687,8 +2991,6 @@ }, "node_modules/@smithy/util-defaults-mode-browser": { "version": "3.0.23", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.23.tgz", - "integrity": "sha512-Y07qslyRtXDP/C5aWKqxTPBl4YxplEELG3xRrz2dnAQ6Lq/FgNrcKWmV561nNaZmFH+EzeGOX3ZRMbU8p1T6Nw==", "license": "Apache-2.0", "dependencies": { "@smithy/property-provider": "^3.1.7", @@ -3703,8 +3005,6 @@ }, "node_modules/@smithy/util-defaults-mode-node": { "version": "3.0.23", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.23.tgz", - "integrity": "sha512-9Y4WH7f0vnDGuHUa4lGX9e2p+sMwODibsceSV6rfkZOvMC+BY3StB2LdO1NHafpsyHJLpwAgChxQ38tFyd6vkg==", "license": "Apache-2.0", "dependencies": { "@smithy/config-resolver": "^3.0.9", @@ -3721,8 +3021,6 @@ }, "node_modules/@smithy/util-endpoints": { "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.1.3.tgz", - "integrity": "sha512-34eACeKov6jZdHqS5hxBMJ4KyWKztTMulhuQ2UdOoP6vVxMLrOKUqIXAwJe/wiWMhXhydLW664B02CNpQBQ4Aw==", "license": "Apache-2.0", "dependencies": { "@smithy/node-config-provider": "^3.1.8", @@ -3735,8 +3033,6 @@ }, "node_modules/@smithy/util-hex-encoding": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", - "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -3747,8 +3043,6 @@ }, "node_modules/@smithy/util-middleware": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.7.tgz", - "integrity": "sha512-OVA6fv/3o7TMJTpTgOi1H5OTwnuUa8hzRzhSFDtZyNxi6OZ70L/FHattSmhE212I7b6WSOJAAmbYnvcjTHOJCA==", "license": "Apache-2.0", "dependencies": { "@smithy/types": "^3.5.0", @@ -3760,8 +3054,6 @@ }, "node_modules/@smithy/util-retry": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.7.tgz", - "integrity": "sha512-nh1ZO1vTeo2YX1plFPSe/OXaHkLAHza5jpokNiiKX2M5YpNUv6RxGJZhpfmiR4jSvVHCjIDmILjrxKmP+/Ghug==", "license": "Apache-2.0", "dependencies": { "@smithy/service-error-classification": "^3.0.7", @@ -3774,8 +3066,6 @@ }, "node_modules/@smithy/util-stream": { "version": "3.1.9", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.9.tgz", - "integrity": "sha512-7YAR0Ub3MwTMjDfjnup4qa6W8gygZMxikBhFMPESi6ASsl/rZJhwLpF/0k9TuezScCojsM0FryGdz4LZtjKPPQ==", "license": "Apache-2.0", "dependencies": { "@smithy/fetch-http-handler": "^3.2.9", @@ -3793,8 +3083,6 @@ }, "node_modules/@smithy/util-uri-escape": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz", - "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -3805,8 +3093,6 @@ }, "node_modules/@smithy/util-utf8": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", - "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", "license": "Apache-2.0", "dependencies": { "@smithy/util-buffer-from": "^3.0.0", @@ -3818,8 +3104,6 @@ }, "node_modules/@smithy/util-waiter": { "version": "3.1.6", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.6.tgz", - "integrity": "sha512-xs/KAwWOeCklq8aMlnpk25LgxEYHKOEodfjfKclDMLcBJEVEKzDLxZxBQyztcuPJ7F54213NJS8PxoiHNMdItQ==", "license": "Apache-2.0", "dependencies": { "@smithy/abort-controller": "^3.1.5", @@ -3832,8 +3116,6 @@ }, "node_modules/@swc/core": { "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.11.29.tgz", - "integrity": "sha512-g4mThMIpWbNhV8G2rWp5a5/Igv8/2UFRJx2yImrLGMgrDDYZIopqZ/z0jZxDgqNA1QDx93rpwNF7jGsxVWcMlA==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", @@ -3869,27 +3151,23 @@ } } }, - "node_modules/@swc/core-darwin-arm64": { + "node_modules/@swc/core-linux-x64-gnu": { "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.29.tgz", - "integrity": "sha512-whsCX7URzbuS5aET58c75Dloby3Gtj/ITk2vc4WW6pSDQKSPDuONsIcZ7B2ng8oz0K6ttbi4p3H/PNPQLJ4maQ==", "cpu": [ - "arm64" + "x64" ], "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ - "darwin" + "linux" ], "engines": { "node": ">=10" } }, - "node_modules/@swc/core-darwin-x64": { + "node_modules/@swc/core-linux-x64-musl": { "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.11.29.tgz", - "integrity": "sha512-S3eTo/KYFk+76cWJRgX30hylN5XkSmjYtCBnM4jPLYn7L6zWYEPajsFLmruQEiTEDUg0gBEWLMNyUeghtswouw==", "cpu": [ "x64" ], @@ -3897,198 +3175,52 @@ "license": "Apache-2.0 AND MIT", "optional": true, "os": [ - "darwin" + "linux" ], "engines": { "node": ">=10" } }, - "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.29.tgz", - "integrity": "sha512-o9gdshbzkUMG6azldHdmKklcfrcMx+a23d/2qHQHPDLUPAN+Trd+sDQUYArK5Fcm7TlpG4sczz95ghN0DMkM7g==", - "cpu": [ - "arm" - ], + "node_modules/@swc/counter": { + "version": "0.1.3", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@swc/types": { + "version": "0.1.21", "dev": true, "license": "Apache-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" + "dependencies": { + "@swc/counter": "^0.1.3" } }, - "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.29.tgz", - "integrity": "sha512-sLoaciOgUKQF1KX9T6hPGzvhOQaJn+3DHy4LOHeXhQqvBgr+7QcZ+hl4uixPKTzxk6hy6Hb0QOvQEdBAAR1gXw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" + "node_modules/@tekdi/all-telemetry-sdk": { + "version": "0.0.32", + "license": "MIT", + "dependencies": { + "grunt-karma": "^0.12.2", + "karma": "^3.0.0" } }, - "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.29.tgz", - "integrity": "sha512-PwjB10BC0N+Ce7RU/L23eYch6lXFHz7r3NFavIcwDNa/AAqywfxyxh13OeRy+P0cg7NDpWEETWspXeI4Ek8otw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], + "node_modules/@testing-library/dom": { + "version": "8.20.1", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.1.3", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.29.tgz", - "integrity": "sha512-i62vBVoPaVe9A3mc6gJG07n0/e7FVeAvdD9uzZTtGLiuIfVfIBta8EMquzvf+POLycSk79Z6lRhGPZPJPYiQaA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-linux-x64-musl": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.29.tgz", - "integrity": "sha512-YER0XU1xqFdK0hKkfSVX1YIyCvMDI7K07GIpefPvcfyNGs38AXKhb2byySDjbVxkdl4dycaxxhRyhQ2gKSlsFQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.29.tgz", - "integrity": "sha512-po+WHw+k9g6FAg5IJ+sMwtA/fIUL3zPQ4m/uJgONBATCVnDDkyW6dBA49uHNVtSEvjvhuD8DVWdFP847YTcITw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.29.tgz", - "integrity": "sha512-h+NjOrbqdRBYr5ItmStmQt6x3tnhqgwbj9YxdGPepbTDamFv7vFnhZR0YfB3jz3UKJ8H3uGJ65Zw1VsC+xpFkg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.11.29", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.29.tgz", - "integrity": "sha512-Q8cs2BDV9wqDvqobkXOYdC+pLUSEpX/KvI0Dgfun1F+LzuLotRFuDhrvkU9ETJA6OnD2+Fn/ieHgloiKA/Mn/g==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "Apache-2.0 AND MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=10" - } - }, - "node_modules/@swc/counter": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", - "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/@swc/types": { - "version": "0.1.21", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.21.tgz", - "integrity": "sha512-2YEtj5HJVbKivud9N4bpPBAyZhj4S2Ipe5LkUG94alTpr7in/GU/EARgPAd3BwU+YOmFVJC2+kjqhGRi3r0ZpQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@swc/counter": "^0.1.3" - } - }, - "node_modules/@tekdi/all-telemetry-sdk": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@tekdi/all-telemetry-sdk/-/all-telemetry-sdk-0.0.32.tgz", - "integrity": "sha512-TFRKsMD2StLtUTyoVkVgsgMW9nIsRotxZ7qs/VxGSd55hc/LHc82kuF6pMlT+h6Y6wJHm67Kfk227Vb2Ykttog==", - "license": "MIT", - "dependencies": { - "grunt-karma": "^0.12.2", - "karma": "^3.0.0" - } - }, - "node_modules/@testing-library/dom": { - "version": "8.20.1", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.1.tgz", - "integrity": "sha512-/DiOQ5xBxgdYRC8LNk7U+RWat0S3qRLeIw3ZIkMQ9kkVlRmwD/Eg8k8CqIpD6GW7u20JIUOfMKbxtiLutpjQ4g==", - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.10.4", - "@babel/runtime": "^7.12.5", - "@types/aria-query": "^5.0.1", - "aria-query": "5.1.3", - "chalk": "^4.1.0", - "dom-accessibility-api": "^0.5.9", - "lz-string": "^1.5.0", - "pretty-format": "^27.0.2" - }, - "engines": { - "node": ">=12" + "node": ">=12" } }, "node_modules/@testing-library/dom/node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -4103,8 +3235,6 @@ }, "node_modules/@testing-library/jest-dom": { "version": "5.17.0", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.17.0.tgz", - "integrity": "sha512-ynmNeT7asXyH3aSVv4vvX4Rb+0qjOhdNHnO/3vuZNqPmhDpV/+rCSGwQ7bLcmU2cJ4dvoheIO85LQj0IbJHEtg==", "license": "MIT", "dependencies": { "@adobe/css-tools": "^4.0.1", @@ -4125,8 +3255,6 @@ }, "node_modules/@testing-library/react": { "version": "13.4.0", - "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-13.4.0.tgz", - "integrity": "sha512-sXOGON+WNTh3MLE9rve97ftaZukN3oNf2KjDy7YTx6hcTO2uuLHuCGynMDhFwGw/jYf4OJ2Qk0i4i79qMNNkyw==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.12.5", @@ -4143,8 +3271,6 @@ }, "node_modules/@testing-library/user-event": { "version": "13.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz", - "integrity": "sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.12.5" @@ -4159,38 +3285,26 @@ }, "node_modules/@tsconfig/node10": { "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", - "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", "license": "MIT" }, "node_modules/@tsconfig/node12": { "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", "license": "MIT" }, "node_modules/@tsconfig/node14": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", "license": "MIT" }, "node_modules/@tsconfig/node16": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", "license": "MIT" }, "node_modules/@types/aria-query": { "version": "5.0.4", - "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", - "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", "license": "MIT" }, "node_modules/@types/babel__core": { "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, "license": "MIT", "dependencies": { @@ -4203,8 +3317,6 @@ }, "node_modules/@types/babel__generator": { "version": "7.27.0", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", "dev": true, "license": "MIT", "dependencies": { @@ -4213,8 +3325,6 @@ }, "node_modules/@types/babel__template": { "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, "license": "MIT", "dependencies": { @@ -4224,31 +3334,18 @@ }, "node_modules/@types/babel__traverse": { "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", - "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.20.7" } }, - "node_modules/@types/estree": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", - "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", "license": "MIT" }, "node_modules/@types/istanbul-lib-report": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", "license": "MIT", "dependencies": { "@types/istanbul-lib-coverage": "*" @@ -4256,8 +3353,6 @@ }, "node_modules/@types/istanbul-reports": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", "license": "MIT", "dependencies": { "@types/istanbul-lib-report": "*" @@ -4265,8 +3360,6 @@ }, "node_modules/@types/jest": { "version": "29.4.0", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz", - "integrity": "sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==", "license": "MIT", "dependencies": { "expect": "^29.0.0", @@ -4275,8 +3368,6 @@ }, "node_modules/@types/jest/node_modules/ansi-styles": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "license": "MIT", "engines": { "node": ">=10" @@ -4287,8 +3378,6 @@ }, "node_modules/@types/jest/node_modules/pretty-format": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", "license": "MIT", "dependencies": { "@jest/schemas": "^29.4.3", @@ -4301,32 +3390,23 @@ }, "node_modules/@types/json5": { "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true, "license": "MIT" }, "node_modules/@types/node": { "version": "18.14.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.1.tgz", - "integrity": "sha512-QH+37Qds3E0eDlReeboBxfHbX9omAcBCXEzswCu6jySP642jiM3cYSIkU/REqwhCUqXdonHFuBfJDiAJxMNhaQ==", "license": "MIT" }, "node_modules/@types/parse-json": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", - "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "license": "MIT" }, "node_modules/@types/prop-types": { "version": "15.7.13", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", - "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", "license": "MIT" }, "node_modules/@types/react": { "version": "18.2.50", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.50.tgz", - "integrity": "sha512-y0XIDJkqp9HynS1VBktZG9mUziHTK5WZTAFDP/UfzSq+poV1drUKsr4VkjMyHTbqMz26BwgLZVYdx/EgPm7EkQ==", "license": "MIT", "dependencies": { "@types/prop-types": "*", @@ -4336,8 +3416,6 @@ }, "node_modules/@types/react-dom": { "version": "18.3.1", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==", "license": "MIT", "dependencies": { "@types/react": "*" @@ -4345,8 +3423,6 @@ }, "node_modules/@types/react-transition-group": { "version": "4.4.10", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.10.tgz", - "integrity": "sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q==", "license": "MIT", "dependencies": { "@types/react": "*" @@ -4354,20 +3430,14 @@ }, "node_modules/@types/scheduler": { "version": "0.16.8", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", - "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==", "license": "MIT" }, "node_modules/@types/stack-utils": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", "license": "MIT" }, "node_modules/@types/testing-library__jest-dom": { "version": "5.14.5", - "resolved": "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz", - "integrity": "sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ==", "license": "MIT", "dependencies": { "@types/jest": "*" @@ -4375,14 +3445,10 @@ }, "node_modules/@types/use-sync-external-store": { "version": "0.0.3", - "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", - "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==", "license": "MIT" }, "node_modules/@types/yargs": { "version": "17.0.22", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz", - "integrity": "sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==", "license": "MIT", "dependencies": { "@types/yargs-parser": "*" @@ -4390,14 +3456,10 @@ }, "node_modules/@types/yargs-parser": { "version": "21.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", - "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", "license": "MIT" }, "node_modules/@vitejs/plugin-react": { "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.5.0.tgz", - "integrity": "sha512-JuLWaEqypaJmOJPLWwO335Ig6jSgC1FTONCWAxnqcQthLTK/Yc9aH6hr9z/87xciejbQcnP3GnA1FWUSWeXaeg==", "dev": true, "license": "MIT", "dependencies": { @@ -4417,8 +3479,6 @@ }, "node_modules/@vitejs/plugin-react-swc": { "version": "3.10.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.10.0.tgz", - "integrity": "sha512-ZmkdHw3wo/o/Rk05YsXZs/DJAfY2CdQ5DUAjoWji+PEr+hYADdGMCGgEAILbiKj+CjspBTuTACBcWDrmC8AUfw==", "dev": true, "license": "MIT", "dependencies": { @@ -4431,8 +3491,6 @@ }, "node_modules/abort-controller": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", "license": "MIT", "dependencies": { "event-target-shim": "^5.0.0" @@ -4443,8 +3501,6 @@ }, "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==", "license": "MIT", "dependencies": { "mime-types": "~2.1.34", @@ -4456,8 +3512,6 @@ }, "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, "license": "MIT", "bin": { @@ -4469,8 +3523,6 @@ }, "node_modules/acorn-jsx": { "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "license": "MIT", "peerDependencies": { @@ -4479,8 +3531,6 @@ }, "node_modules/acorn-walk": { "version": "8.3.4", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", - "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", "license": "MIT", "dependencies": { "acorn": "^8.11.0" @@ -4491,8 +3541,6 @@ }, "node_modules/acorn-walk/node_modules/acorn": { "version": "8.13.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", - "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -4503,14 +3551,10 @@ }, "node_modules/after": { "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==", "license": "MIT" }, "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, "license": "MIT", "dependencies": { @@ -4523,8 +3567,6 @@ }, "node_modules/ajv": { "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.3", @@ -4539,8 +3581,6 @@ }, "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, "license": "MIT", "engines": { @@ -4549,8 +3589,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, "license": "MIT", "dependencies": { @@ -4565,8 +3603,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">=8" @@ -4574,8 +3610,6 @@ }, "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==", "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -4589,8 +3623,6 @@ }, "node_modules/anymatch": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "license": "ISC", "dependencies": { "micromatch": "^3.1.4", @@ -4599,8 +3631,6 @@ }, "node_modules/anymatch/node_modules/define-property": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "license": "MIT", "dependencies": { "is-descriptor": "^1.0.2", @@ -4612,8 +3642,6 @@ }, "node_modules/anymatch/node_modules/extend-shallow": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", @@ -4625,8 +3653,6 @@ }, "node_modules/anymatch/node_modules/is-descriptor": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -4638,8 +3664,6 @@ }, "node_modules/anymatch/node_modules/is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" @@ -4650,8 +3674,6 @@ }, "node_modules/anymatch/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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4659,8 +3681,6 @@ }, "node_modules/anymatch/node_modules/micromatch": { "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", @@ -4683,8 +3703,6 @@ }, "node_modules/anymatch/node_modules/normalize-path": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", "license": "MIT", "dependencies": { "remove-trailing-separator": "^1.0.1" @@ -4695,14 +3713,10 @@ }, "node_modules/arg": { "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", "license": "MIT" }, "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, "license": "MIT", "dependencies": { @@ -4711,8 +3725,6 @@ }, "node_modules/aria-query": { "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", "license": "Apache-2.0", "dependencies": { "deep-equal": "^2.0.5" @@ -4720,8 +3732,6 @@ }, "node_modules/arr-diff": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4729,8 +3739,6 @@ }, "node_modules/arr-flatten": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4738,8 +3746,6 @@ }, "node_modules/arr-union": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4747,8 +3753,7 @@ }, "node_modules/array-buffer-byte-length": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", - "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -4763,8 +3768,7 @@ }, "node_modules/array-includes": { "version": "3.1.9", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", - "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -4785,8 +3789,6 @@ }, "node_modules/array-slice": { "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha512-rlVfZW/1Ph2SNySXwR9QYkChp8EkOEiTMO5Vwx60usw04i4nWemkm9RXmQqgkQFaLHsqLuADvjp6IfgL9l2M8Q==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4794,8 +3796,6 @@ }, "node_modules/array-unique": { "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4803,8 +3803,6 @@ }, "node_modules/array.prototype.findlast": { "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", "dev": true, "license": "MIT", "dependencies": { @@ -4824,8 +3822,7 @@ }, "node_modules/array.prototype.findlastindex": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -4843,8 +3840,7 @@ }, "node_modules/array.prototype.flat": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -4861,8 +3857,7 @@ }, "node_modules/array.prototype.flatmap": { "version": "1.3.3", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", - "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -4879,8 +3874,6 @@ }, "node_modules/array.prototype.tosorted": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", - "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", "dev": true, "license": "MIT", "dependencies": { @@ -4896,8 +3889,7 @@ }, "node_modules/arraybuffer.prototype.slice": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", - "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.1", @@ -4917,14 +3909,10 @@ }, "node_modules/arraybuffer.slice": { "version": "0.0.7", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", "license": "MIT" }, "node_modules/asn1": { "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "license": "MIT", "dependencies": { "safer-buffer": "~2.1.0" @@ -4932,8 +3920,6 @@ }, "node_modules/assert-plus": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "license": "MIT", "engines": { "node": ">=0.8" @@ -4941,8 +3927,6 @@ }, "node_modules/assign-symbols": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -4950,14 +3934,11 @@ }, "node_modules/ast-types-flow": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", - "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true, "license": "MIT" }, "node_modules/astral-regex": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, "license": "MIT", "engines": { @@ -4966,8 +3947,6 @@ }, "node_modules/async-each": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz", - "integrity": "sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==", "funding": [ { "type": "individual", @@ -4978,8 +3957,7 @@ }, "node_modules/async-function": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", - "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -4987,20 +3965,14 @@ }, "node_modules/async-limiter": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", "license": "MIT" }, "node_modules/asynckit": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "license": "MIT" }, "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==", "license": "(MIT OR Apache-2.0)", "bin": { "atob": "bin/atob.js" @@ -5011,8 +3983,6 @@ }, "node_modules/available-typed-arrays": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "license": "MIT", "dependencies": { "possible-typed-array-names": "^1.0.0" @@ -5026,8 +3996,6 @@ }, "node_modules/aws-sign2": { "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", "license": "Apache-2.0", "engines": { "node": "*" @@ -5035,23 +4003,19 @@ }, "node_modules/aws4": { "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", "license": "MIT" }, "node_modules/axe-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", - "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", - "license": "MPL-2.0", + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.3.tgz", + "integrity": "sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==", + "dev": true, "engines": { "node": ">=4" } }, "node_modules/axios": { "version": "1.6.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", - "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", "license": "MIT", "dependencies": { "follow-redirects": "^1.15.4", @@ -5060,19 +4024,18 @@ } }, "node_modules/axobject-query": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", - "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==", - "license": "Apache-2.0", - "dependencies": { - "dequal": "^2.0.3" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true, + "engines": { + "node": ">= 0.4" } }, "node_modules/babel-plugin-macros": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", - "license": "MIT", "dependencies": { "@babel/runtime": "^7.12.5", "cosmiconfig": "^7.0.0", @@ -5085,20 +4048,14 @@ }, "node_modules/backo2": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", "license": "MIT" }, "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==", "license": "MIT" }, "node_modules/base": { "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "license": "MIT", "dependencies": { "cache-base": "^1.0.1", @@ -5115,8 +4072,6 @@ }, "node_modules/base-x": { "version": "3.0.9", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", - "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", "license": "MIT", "dependencies": { "safe-buffer": "^5.0.1" @@ -5124,8 +4079,6 @@ }, "node_modules/base/node_modules/define-property": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" @@ -5136,8 +4089,6 @@ }, "node_modules/base/node_modules/is-descriptor": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -5149,16 +4100,12 @@ }, "node_modules/base64-arraybuffer": { "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha512-437oANT9tP582zZMwSvZGy2nmSeAb8DW2me3y+Uv1Wp2Rulr8Mqlyrv3E7MLxmsiaPSMMDmiDVzgE+e8zlMx9g==", "engines": { "node": ">= 0.6.0" } }, "node_modules/base64id": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", - "integrity": "sha512-rz8L+d/xByiB/vLVftPkyY215fqNrmasrcJsYkVcm4TgJNz+YXKrFaFAWibSaHkiKoSgMDCb+lipOIRQNGYesw==", "license": "MIT", "engines": { "node": ">= 0.4.0" @@ -5166,8 +4113,6 @@ }, "node_modules/base64url": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", "license": "MIT", "engines": { "node": ">=6.0.0" @@ -5175,8 +4120,6 @@ }, "node_modules/base64url-universal": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/base64url-universal/-/base64url-universal-1.1.0.tgz", - "integrity": "sha512-WyftvZqye29YQ10ZnuiBeEj0lk8SN8xHU9hOznkLc85wS1cLTp6RpzlMrHxMPD9nH7S55gsBqMqgGyz93rqmkA==", "license": "BSD-3-Clause", "dependencies": { "base64url": "^3.0.0" @@ -5187,8 +4130,6 @@ }, "node_modules/bcrypt-pbkdf": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", "license": "BSD-3-Clause", "dependencies": { "tweetnacl": "^0.14.3" @@ -5196,8 +4137,6 @@ }, "node_modules/better-assert": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha512-bYeph2DFlpK1XmGs6fvlLRUN29QISM3GBuUwSFsMY2XRx4AvC0WNCS57j4c/xGrK2RS24C1w3YoBOsw9fT46tQ==", "dependencies": { "callsite": "1.0.0" }, @@ -5207,8 +4146,6 @@ }, "node_modules/binary-extensions": { "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -5218,7 +4155,6 @@ "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "license": "MIT", "optional": true, "dependencies": { "file-uri-to-path": "1.0.0" @@ -5226,20 +4162,14 @@ }, "node_modules/blob": { "version": "0.0.5", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", "license": "MIT" }, "node_modules/bluebird": { "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "license": "MIT" }, "node_modules/body-parser": { "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "license": "MIT", "dependencies": { "bytes": "3.1.2", @@ -5262,8 +4192,6 @@ }, "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==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -5271,20 +4199,14 @@ }, "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==", "license": "MIT" }, "node_modules/bowser": { "version": "2.11.0", - "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", - "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", @@ -5293,8 +4215,6 @@ }, "node_modules/braces": { "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "license": "MIT", "dependencies": { "arr-flatten": "^1.1.0", @@ -5314,8 +4234,6 @@ }, "node_modules/browserslist": { "version": "4.24.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", - "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", "dev": true, "funding": [ { @@ -5347,8 +4265,6 @@ }, "node_modules/bs58": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", "license": "MIT", "dependencies": { "base-x": "^3.0.2" @@ -5356,8 +4272,6 @@ }, "node_modules/buffer-alloc": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", - "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", "license": "MIT", "dependencies": { "buffer-alloc-unsafe": "^1.1.0", @@ -5366,20 +4280,14 @@ }, "node_modules/buffer-alloc-unsafe": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", - "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", "license": "MIT" }, "node_modules/buffer-fill": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==", "license": "MIT" }, "node_modules/bytes": { "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "license": "MIT", "engines": { "node": ">= 0.8" @@ -5387,8 +4295,6 @@ }, "node_modules/cache-base": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "license": "MIT", "dependencies": { "collection-visit": "^1.0.0", @@ -5407,8 +4313,6 @@ }, "node_modules/call-bind": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.0", @@ -5425,8 +4329,6 @@ }, "node_modules/call-bind-apply-helpers": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", - "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -5438,8 +4340,6 @@ }, "node_modules/call-bound": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", - "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", @@ -5454,52 +4354,23 @@ }, "node_modules/callsite": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha512-0vdNRFXn5q+dtOqjfFtmtlI9N2eVZ7LMyEV2iKC5mEEFvSg/69Ml6b/WU2qF8W1nLRa0wiSrDT3Y5jOHZCwKPQ==", "engines": { "node": "*" } }, "node_modules/callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001669", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", - "integrity": "sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==", - "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" - } - ], - "license": "CC-BY-4.0" - }, "node_modules/canonicalize": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/canonicalize/-/canonicalize-1.0.8.tgz", - "integrity": "sha512-0CNTVCLZggSh7bc5VkX5WWPWO+cyZbNd07IHIsSXLia/eAq+r836hgk+8BKoEh7949Mda87VUOitx5OddVj64A==", "license": "Apache-2.0" }, "node_modules/canvas-confetti": { "version": "1.9.3", - "resolved": "https://registry.npmjs.org/canvas-confetti/-/canvas-confetti-1.9.3.tgz", - "integrity": "sha512-rFfTURMvmVEX1gyXFgn5QMn81bYk70qa0HLzcIOSVEyl57n6o9ItHeBtUSWdvKAPY0xlvBHno4/v3QPrT83q9g==", "license": "ISC", "funding": { "type": "donate", @@ -5508,14 +4379,10 @@ }, "node_modules/caseless": { "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "license": "Apache-2.0" }, "node_modules/chalk": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -5527,14 +4394,10 @@ }, "node_modules/character-error-rate": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-error-rate/-/character-error-rate-1.1.4.tgz", - "integrity": "sha512-VDVylpiUdLOqY9aowYsz9M3zKdeQAdFF76PI1lv3oBQANQ6bc6V7pGEqar9nx6c37x0UMu5EHg32Sus3fQ1XxQ==", "license": "MIT" }, "node_modules/chokidar": { "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", "license": "MIT", "dependencies": { "anymatch": "^2.0.0", @@ -5553,10 +4416,26 @@ "fsevents": "^1.2.7" } }, + "node_modules/chokidar/node_modules/fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "deprecated": "Upgrade to fsevents v2 to mitigate potential security issues", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + }, + "engines": { + "node": ">= 4.0" + } + }, "node_modules/chokidar/node_modules/glob-parent": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", "license": "ISC", "dependencies": { "is-glob": "^3.1.0", @@ -5565,8 +4444,6 @@ }, "node_modules/chokidar/node_modules/glob-parent/node_modules/is-glob": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", "license": "MIT", "dependencies": { "is-extglob": "^2.1.0" @@ -5577,8 +4454,6 @@ }, "node_modules/ci-info": { "version": "3.8.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", - "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", "funding": [ { "type": "github", @@ -5592,15 +4467,10 @@ }, "node_modules/circular-json": { "version": "0.5.9", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.9.tgz", - "integrity": "sha512-4ivwqHpIFJZBuhN3g/pEcdbnGUywkBblloGbkglyloVjjR3uT6tieI89MVOfbP2tHX5sgb01FuLgAOzebNlJNQ==", - "deprecated": "CircularJSON is in maintenance only, flatted is its successor.", "license": "MIT" }, "node_modules/class-utils": { "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "license": "MIT", "dependencies": { "arr-union": "^3.1.0", @@ -5614,14 +4484,10 @@ }, "node_modules/classnames": { "version": "2.5.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", - "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==", "license": "MIT" }, "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, "license": "MIT", "engines": { @@ -5630,8 +4496,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, "license": "MIT", "dependencies": { @@ -5643,8 +4507,6 @@ }, "node_modules/cli-truncate": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", "dev": true, "license": "MIT", "dependencies": { @@ -5660,8 +4522,6 @@ }, "node_modules/clsx": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", "license": "MIT", "engines": { "node": ">=6" @@ -5669,8 +4529,6 @@ }, "node_modules/collection-visit": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", "license": "MIT", "dependencies": { "map-visit": "^1.0.0", @@ -5682,8 +4540,6 @@ }, "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==", "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -5694,21 +4550,15 @@ }, "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==", "license": "MIT" }, "node_modules/colorette": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==", "dev": true, "license": "MIT" }, "node_modules/colors": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "license": "MIT", "engines": { "node": ">=0.1.90" @@ -5716,8 +4566,6 @@ }, "node_modules/combine-lists": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz", - "integrity": "sha512-4Mi0V7N48B9KzC8Zl/U7wiWuxMFEHf44N3/PSoAvWDu8IOPrddNo1y1tC/kXbP7IvVMhgCFMMNzgKb0pWoin9w==", "license": "MIT", "dependencies": { "lodash": "^4.5.0" @@ -5725,8 +4573,6 @@ }, "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==", "license": "MIT", "dependencies": { "delayed-stream": "~1.0.0" @@ -5737,8 +4583,6 @@ }, "node_modules/commander": { "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "dev": true, "license": "MIT", "engines": { @@ -5746,34 +4590,24 @@ } }, "node_modules/component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw==" + "version": "1.0.0" }, "node_modules/component-emitter": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", - "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA==" + "version": "0.0.3" }, "node_modules/concat-map": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "license": "MIT" }, "node_modules/connect": { "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", "license": "MIT", "dependencies": { "debug": "2.6.9", @@ -5787,8 +4621,6 @@ }, "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==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -5796,14 +4628,10 @@ }, "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==", "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -5812,13 +4640,10 @@ "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==", - "license": "MIT" + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" }, "node_modules/cookie": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha512-+IJOX0OqlHCszo2mBUq+SrEbCj6w7Kpffqx60zYbPTFaO4+yYgRjHwcZNpWvaTylDHaV7PPmBHzSecZiMhtPgw==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -5826,8 +4651,6 @@ }, "node_modules/copy-descriptor": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -5835,22 +4658,15 @@ }, "node_modules/core-js": { "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", - "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", "hasInstallScript": true, "license": "MIT" }, "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==", "license": "MIT" }, "node_modules/cosmiconfig": { "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "license": "MIT", "dependencies": { "@types/parse-json": "^4.0.0", @@ -5865,14 +4681,10 @@ }, "node_modules/create-require": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", "license": "MIT" }, "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, "license": "MIT", "dependencies": { @@ -5886,14 +4698,10 @@ }, "node_modules/crypto-js": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", - "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==", "license": "MIT" }, "node_modules/crypto-ld": { "version": "3.9.0", - "resolved": "https://registry.npmjs.org/crypto-ld/-/crypto-ld-3.9.0.tgz", - "integrity": "sha512-PFE7V6A2QNnUp6iiPVEZI4p8wsztkEWLbY1BAXVnclm/aw4KGwpJ+1Ds4vQUCJ5BsWxj15fwE5rHQ8AWaWB2nw==", "license": "BSD-3-Clause", "dependencies": { "base64url-universal": "^1.0.1", @@ -5910,8 +4718,6 @@ }, "node_modules/css-vendor": { "version": "2.0.8", - "resolved": "https://registry.npmjs.org/css-vendor/-/css-vendor-2.0.8.tgz", - "integrity": "sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ==", "dev": true, "license": "MIT", "dependencies": { @@ -5921,32 +4727,23 @@ }, "node_modules/css.escape": { "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", "license": "MIT" }, "node_modules/csstype": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "license": "MIT" }, "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==", "license": "MIT" }, "node_modules/damerau-levenshtein": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true, "license": "BSD-2-Clause" }, "node_modules/dashdash": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "license": "MIT", "dependencies": { "assert-plus": "^1.0.0" @@ -5957,8 +4754,6 @@ }, "node_modules/data-uri-to-buffer": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz", - "integrity": "sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og==", "license": "MIT", "engines": { "node": ">= 6" @@ -5966,8 +4761,7 @@ }, "node_modules/data-view-buffer": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -5983,8 +4777,7 @@ }, "node_modules/data-view-byte-length": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -6000,8 +4793,7 @@ }, "node_modules/data-view-byte-offset": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -6017,9 +4809,6 @@ }, "node_modules/date-format": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz", - "integrity": "sha512-lAJqBmFzCLcDJdI9cEnJ7loSkLTh1PbIgZUndlzvYbf6NyFEr5n9rQhOwr6CIGwZqyQ3sYeQQiP9NOVQmgmRMA==", - "deprecated": "1.x is no longer supported. Please upgrade to 4.x or higher.", "license": "MIT", "engines": { "node": ">=4.0" @@ -6027,14 +4816,10 @@ }, "node_modules/dayjs": { "version": "1.11.10", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", - "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==", "license": "MIT" }, "node_modules/debug": { "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "license": "MIT", "dependencies": { "ms": "2.1.2" @@ -6050,8 +4835,6 @@ }, "node_modules/decode-uri-component": { "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", "license": "MIT", "engines": { "node": ">=0.10" @@ -6059,14 +4842,10 @@ }, "node_modules/deep-diff": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-1.0.2.tgz", - "integrity": "sha512-aWS3UIVH+NPGCD1kki+DCU9Dua032iSsO43LqQpcs4R3+dVv7tX0qBGjiVHJHjplsoUM2XRO/KB92glqc68awg==", "license": "MIT" }, "node_modules/deep-equal": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz", - "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -6093,15 +4872,11 @@ }, "node_modules/deep-is": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true, "license": "MIT" }, "node_modules/deepmerge": { "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -6109,8 +4884,6 @@ }, "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==", "license": "MIT", "dependencies": { "es-define-property": "^1.0.0", @@ -6126,8 +4899,6 @@ }, "node_modules/define-properties": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "license": "MIT", "dependencies": { "define-data-property": "^1.0.1", @@ -6143,8 +4914,6 @@ }, "node_modules/define-property": { "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", "license": "MIT", "dependencies": { "is-descriptor": "^0.1.0" @@ -6155,8 +4924,6 @@ }, "node_modules/delayed-stream": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "license": "MIT", "engines": { "node": ">=0.4.0" @@ -6164,26 +4931,13 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.8" } }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/destroy": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "license": "MIT", "engines": { "node": ">= 0.8", @@ -6192,14 +4946,10 @@ }, "node_modules/di": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", "license": "MIT" }, "node_modules/diff": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "license": "BSD-3-Clause", "engines": { "node": ">=0.3.1" @@ -6207,8 +4957,6 @@ }, "node_modules/diff-sequences": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", - "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", "license": "MIT", "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -6216,8 +4964,6 @@ }, "node_modules/doctrine": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6229,14 +4975,10 @@ }, "node_modules/dom-accessibility-api": { "version": "0.5.16", - "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", - "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", "license": "MIT" }, "node_modules/dom-helpers": { "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.8.7", @@ -6245,8 +4987,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==", "license": "MIT", "dependencies": { "custom-event": "~1.0.0", @@ -6257,8 +4997,6 @@ }, "node_modules/dunder-proto": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.1", @@ -6271,8 +5009,6 @@ }, "node_modules/ecc-jsbn": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", "license": "MIT", "dependencies": { "jsbn": "~0.1.0", @@ -6281,27 +5017,20 @@ }, "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==", "license": "MIT" }, "node_modules/electron-to-chromium": { "version": "1.5.41", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.41.tgz", - "integrity": "sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==", "dev": true, "license": "ISC" }, "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, "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">= 0.8" @@ -6309,8 +5038,6 @@ }, "node_modules/engine.io": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz", - "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==", "license": "MIT", "dependencies": { "accepts": "~1.3.4", @@ -6323,8 +5050,6 @@ }, "node_modules/engine.io-client": { "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", - "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", "license": "MIT", "dependencies": { "component-emitter": "1.2.1", @@ -6342,14 +5067,10 @@ }, "node_modules/engine.io-client/node_modules/component-emitter": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==", "license": "MIT" }, "node_modules/engine.io-client/node_modules/debug": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -6357,14 +5078,10 @@ }, "node_modules/engine.io-client/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, "node_modules/engine.io-parser": { "version": "2.1.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", - "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", "license": "MIT", "dependencies": { "after": "0.8.2", @@ -6376,8 +5093,6 @@ }, "node_modules/engine.io/node_modules/debug": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -6385,14 +5100,10 @@ }, "node_modules/engine.io/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, "node_modules/enquirer": { "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", "dev": true, "license": "MIT", "dependencies": { @@ -6405,14 +5116,10 @@ }, "node_modules/ent": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" @@ -6420,8 +5127,7 @@ }, "node_modules/es-abstract": { "version": "1.24.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz", - "integrity": "sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg==", + "dev": true, "license": "MIT", "dependencies": { "array-buffer-byte-length": "^1.0.2", @@ -6488,8 +5194,6 @@ }, "node_modules/es-define-property": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -6497,8 +5201,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -6506,8 +5208,6 @@ }, "node_modules/es-get-iterator": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -6526,8 +5226,7 @@ }, "node_modules/es-iterator-helpers": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", - "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -6553,8 +5252,6 @@ }, "node_modules/es-object-atoms": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0" @@ -6565,8 +5262,7 @@ }, "node_modules/es-set-tostringtag": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -6580,8 +5276,7 @@ }, "node_modules/es-shim-unscopables": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, "license": "MIT", "dependencies": { "hasown": "^2.0.0" @@ -6589,8 +5284,7 @@ }, "node_modules/es-to-primitive": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, "license": "MIT", "dependencies": { "is-callable": "^1.2.7", @@ -6605,50 +5299,44 @@ } }, "node_modules/esbuild": { - "version": "0.25.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.5.tgz", - "integrity": "sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==", + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", "dev": true, "hasInstallScript": true, - "license": "MIT", "bin": { "esbuild": "bin/esbuild" }, "engines": { - "node": ">=18" + "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.5", - "@esbuild/android-arm": "0.25.5", - "@esbuild/android-arm64": "0.25.5", - "@esbuild/android-x64": "0.25.5", - "@esbuild/darwin-arm64": "0.25.5", - "@esbuild/darwin-x64": "0.25.5", - "@esbuild/freebsd-arm64": "0.25.5", - "@esbuild/freebsd-x64": "0.25.5", - "@esbuild/linux-arm": "0.25.5", - "@esbuild/linux-arm64": "0.25.5", - "@esbuild/linux-ia32": "0.25.5", - "@esbuild/linux-loong64": "0.25.5", - "@esbuild/linux-mips64el": "0.25.5", - "@esbuild/linux-ppc64": "0.25.5", - "@esbuild/linux-riscv64": "0.25.5", - "@esbuild/linux-s390x": "0.25.5", - "@esbuild/linux-x64": "0.25.5", - "@esbuild/netbsd-arm64": "0.25.5", - "@esbuild/netbsd-x64": "0.25.5", - "@esbuild/openbsd-arm64": "0.25.5", - "@esbuild/openbsd-x64": "0.25.5", - "@esbuild/sunos-x64": "0.25.5", - "@esbuild/win32-arm64": "0.25.5", - "@esbuild/win32-ia32": "0.25.5", - "@esbuild/win32-x64": "0.25.5" + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" } }, "node_modules/escalade": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, "license": "MIT", "engines": { @@ -6657,14 +5345,10 @@ }, "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==", "license": "MIT" }, "node_modules/escape-string-regexp": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "license": "MIT", "engines": { "node": ">=10" @@ -6675,9 +5359,6 @@ }, "node_modules/eslint": { "version": "7.32.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", - "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", - "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, "license": "MIT", "dependencies": { @@ -6734,8 +5415,6 @@ }, "node_modules/eslint-config-prettier": { "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", - "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", "dev": true, "license": "MIT", "bin": { @@ -6747,8 +5426,7 @@ }, "node_modules/eslint-import-resolver-node": { "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7", @@ -6758,8 +5436,7 @@ }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.1" @@ -6767,8 +5444,7 @@ }, "node_modules/eslint-module-utils": { "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "dev": true, "license": "MIT", "dependencies": { "debug": "^3.2.7" @@ -6784,8 +5460,7 @@ }, "node_modules/eslint-module-utils/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.1" @@ -6793,8 +5468,7 @@ }, "node_modules/eslint-plugin-import": { "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.7", @@ -6824,8 +5498,7 @@ }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.1" @@ -6833,8 +5506,7 @@ }, "node_modules/eslint-plugin-import/node_modules/doctrine": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" @@ -6844,48 +5516,45 @@ } }, "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", - "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", - "license": "MIT", + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, "dependencies": { - "@babel/runtime": "^7.23.2", - "aria-query": "^5.3.0", - "array-includes": "^3.1.7", + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", "array.prototype.flatmap": "^1.3.2", "ast-types-flow": "^0.0.8", - "axe-core": "=4.7.0", - "axobject-query": "^3.2.1", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", "damerau-levenshtein": "^1.0.8", "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.15", - "hasown": "^2.0.0", + "hasown": "^2.0.2", "jsx-ast-utils": "^3.3.5", "language-tags": "^1.0.9", "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7" + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" }, "engines": { "node": ">=4.0" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" } }, "node_modules/eslint-plugin-jsx-a11y/node_modules/aria-query": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", - "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", - "license": "Apache-2.0", - "dependencies": { - "dequal": "^2.0.3" + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true, + "engines": { + "node": ">= 0.4" } }, "node_modules/eslint-plugin-prettier": { "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", - "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", "dev": true, "license": "MIT", "dependencies": { @@ -6906,8 +5575,6 @@ }, "node_modules/eslint-plugin-react": { "version": "7.37.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz", - "integrity": "sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==", "dev": true, "license": "MIT", "dependencies": { @@ -6939,8 +5606,6 @@ }, "node_modules/eslint-plugin-react-hooks": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", - "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", "dev": true, "license": "MIT", "engines": { @@ -6952,8 +5617,6 @@ }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6965,8 +5628,6 @@ }, "node_modules/eslint-plugin-react/node_modules/resolve": { "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "dev": true, "license": "MIT", "dependencies": { @@ -6983,8 +5644,6 @@ }, "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, "license": "BSD-2-Clause", "dependencies": { @@ -6997,8 +5656,6 @@ }, "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, "license": "BSD-2-Clause", "engines": { @@ -7007,8 +5664,6 @@ }, "node_modules/eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dev": true, "license": "MIT", "dependencies": { @@ -7023,8 +5678,6 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -7033,8 +5686,6 @@ }, "node_modules/eslint-visitor-keys": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "dev": true, "license": "Apache-2.0", "engines": { @@ -7043,8 +5694,6 @@ }, "node_modules/eslint/node_modules/@babel/code-frame": { "version": "7.12.11", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", - "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", "dev": true, "license": "MIT", "dependencies": { @@ -7053,8 +5702,6 @@ }, "node_modules/eslint/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, "license": "MIT", "dependencies": { @@ -7070,8 +5717,6 @@ }, "node_modules/eslint/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, "license": "MIT", "dependencies": { @@ -7087,8 +5732,6 @@ }, "node_modules/eslint/node_modules/globals": { "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "license": "MIT", "dependencies": { @@ -7103,15 +5746,11 @@ }, "node_modules/eslint/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, "license": "MIT" }, "node_modules/eslint/node_modules/semver": { "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, "license": "ISC", "bin": { @@ -7123,8 +5762,6 @@ }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, "license": "(MIT OR CC0-1.0)", "engines": { @@ -7136,8 +5773,6 @@ }, "node_modules/esm": { "version": "3.2.25", - "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", - "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==", "license": "MIT", "engines": { "node": ">=6" @@ -7145,8 +5780,6 @@ }, "node_modules/espree": { "version": "7.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", - "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -7160,8 +5793,6 @@ }, "node_modules/espree/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -7170,8 +5801,6 @@ }, "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, "license": "BSD-2-Clause", "bin": { @@ -7184,8 +5813,6 @@ }, "node_modules/esquery": { "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -7197,8 +5824,6 @@ }, "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, "license": "BSD-2-Clause", "dependencies": { @@ -7210,8 +5835,6 @@ }, "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, "license": "BSD-2-Clause", "engines": { @@ -7220,8 +5843,7 @@ }, "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, "license": "BSD-2-Clause", "engines": { "node": ">=0.10.0" @@ -7229,8 +5851,6 @@ }, "node_modules/event-target-shim": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", "license": "MIT", "engines": { "node": ">=6" @@ -7238,14 +5858,10 @@ }, "node_modules/eventemitter3": { "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "license": "MIT" }, "node_modules/execa": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "license": "MIT", "dependencies": { @@ -7268,8 +5884,6 @@ }, "node_modules/expand-braces": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz", - "integrity": "sha512-zOOsEnAhvIxxd0esCNbYG2xerGf46niZ1egS43eV7Fu4t7VIScgPXMcMabCLaPrqkzwvwo6zZipDiX3t0ILF2w==", "license": "MIT", "dependencies": { "array-slice": "^0.2.3", @@ -7282,8 +5896,6 @@ }, "node_modules/expand-braces/node_modules/array-unique": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -7291,8 +5903,6 @@ }, "node_modules/expand-braces/node_modules/braces": { "version": "0.1.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz", - "integrity": "sha512-EIMHIv2UXHWFY2xubUGKz+hq9hNkENj4Pjvr7h58cmJgpkK2yMlKA8I484f7MSttkzVAy/lL7X9xDaILd6avzA==", "dependencies": { "expand-range": "^0.1.0" }, @@ -7302,8 +5912,6 @@ }, "node_modules/expand-brackets": { "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", "license": "MIT", "dependencies": { "debug": "^2.3.3", @@ -7320,8 +5928,6 @@ }, "node_modules/expand-brackets/node_modules/debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -7329,14 +5935,10 @@ }, "node_modules/expand-brackets/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, "node_modules/expand-range": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz", - "integrity": "sha512-busOHJ0t7t5UcutcyNDqmaDX+1cb0XlqsAUgTlmplVv0rIqBaMcBSZRLlkDm0nxtl8O3o/EvRRrdQ/WnyPERLQ==", "dependencies": { "is-number": "^0.1.1", "repeat-string": "^0.2.2" @@ -7347,24 +5949,18 @@ }, "node_modules/expand-range/node_modules/is-number": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz", - "integrity": "sha512-la5kPULwIgkSSaZj9w7/A1uHqOBAgOhDUKQ5CkfL8LZ4Si6r4+2D0hI6b4o60MW4Uj2yNJARWIZUDPxlvOYQcw==", "engines": { "node": ">=0.10.0" } }, "node_modules/expand-range/node_modules/repeat-string": { "version": "0.2.2", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz", - "integrity": "sha512-yHeI3F9v20MY+8/5WAUgIWseMZwpLD+l9h5hGyzh6fQjhle2AwjjRDao1m5IozSDuVvMw09/mvE8AU1oDmZKpQ==", "engines": { "node": ">=0.10" } }, "node_modules/expect": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz", - "integrity": "sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==", "license": "MIT", "dependencies": { "@jest/expect-utils": "^29.4.3", @@ -7379,14 +5975,10 @@ }, "node_modules/extend": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", "license": "MIT" }, "node_modules/extend-shallow": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "license": "MIT", "dependencies": { "is-extendable": "^0.1.0" @@ -7397,8 +5989,6 @@ }, "node_modules/extglob": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "license": "MIT", "dependencies": { "array-unique": "^0.3.2", @@ -7416,8 +6006,6 @@ }, "node_modules/extglob/node_modules/define-property": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" @@ -7428,8 +6016,6 @@ }, "node_modules/extglob/node_modules/is-descriptor": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -7441,8 +6027,6 @@ }, "node_modules/extsprintf": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", "engines": [ "node >=0.6.0" ], @@ -7450,46 +6034,32 @@ }, "node_modules/faker": { "version": "5.5.3", - "resolved": "https://registry.npmjs.org/faker/-/faker-5.5.3.tgz", - "integrity": "sha512-wLTv2a28wjUyWkbnX7u/ABZBkUkIF2fCd73V6P2oFqEGEktDfzWx4UxrSqtPRw0xPRAcjeAOIiJWqZm3pP4u3g==", "license": "MIT" }, "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==", "license": "MIT" }, "node_modules/fast-diff": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", - "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", "dev": true, "license": "Apache-2.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==", "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true, "license": "MIT" }, "node_modules/fast-uri": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", - "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==", "license": "BSD-3-Clause" }, "node_modules/fast-xml-parser": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz", - "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==", "funding": [ { "type": "github", @@ -7508,25 +6078,8 @@ "fxparser": "src/cli/cli.js" } }, - "node_modules/fdir": { - "version": "6.4.5", - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz", - "integrity": "sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "picomatch": "^3 || ^4" - }, - "peerDependenciesMeta": { - "picomatch": { - "optional": true - } - } - }, "node_modules/fetch-blob": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-2.1.2.tgz", - "integrity": "sha512-YKqtUDwqLyfyMnmbw8XD6Q8j9i/HggKtPEI+pZ1+8bvheBu78biSmNaXWusx1TauGqtUUGx/cBb1mKdq2rLYow==", "license": "MIT", "engines": { "node": "^10.17.0 || >=12.3.0" @@ -7537,10 +6090,16 @@ } } }, + "node_modules/ffmpeg": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/ffmpeg/-/ffmpeg-0.0.4.tgz", + "integrity": "sha512-3TgWUJJlZGQn+crJFyhsO/oNeRRnGTy6GhgS98oUCIfZrOW5haPPV7DUfOm3xJcHr5q3TJpjk2GudPutrNisRA==", + "dependencies": { + "when": ">= 0.0.1" + } + }, "node_modules/file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "license": "MIT", "dependencies": { @@ -7554,13 +6113,10 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "license": "MIT", "optional": true }, "node_modules/fill-range": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", @@ -7574,8 +6130,6 @@ }, "node_modules/finalhandler": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "license": "MIT", "dependencies": { "debug": "2.6.9", @@ -7592,8 +6146,6 @@ }, "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==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -7601,14 +6153,10 @@ }, "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==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "ee-first": "1.1.1" @@ -7620,13 +6168,10 @@ "node_modules/find-root": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", - "license": "MIT" + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" }, "node_modules/flat-cache": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "license": "MIT", "dependencies": { @@ -7640,15 +6185,11 @@ }, "node_modules/flatted": { "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", "dev": true, "license": "ISC" }, "node_modules/follow-redirects": { "version": "1.15.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", - "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", "funding": [ { "type": "individual", @@ -7667,8 +6208,6 @@ }, "node_modules/for-each": { "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "license": "MIT", "dependencies": { "is-callable": "^1.2.7" @@ -7682,8 +6221,6 @@ }, "node_modules/for-in": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -7691,8 +6228,6 @@ }, "node_modules/forever-agent": { "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", "license": "Apache-2.0", "engines": { "node": "*" @@ -7700,8 +6235,6 @@ }, "node_modules/form-data": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "license": "MIT", "dependencies": { "asynckit": "^0.4.0", @@ -7714,8 +6247,6 @@ }, "node_modules/fragment-cache": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", "license": "MIT", "dependencies": { "map-cache": "^0.2.2" @@ -7726,8 +6257,6 @@ }, "node_modules/framer-motion": { "version": "12.4.1", - "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.4.1.tgz", - "integrity": "sha512-5Ijbea3topSZjadQ0hgc/TcWj2ldMZmNREM7RvAhvsThYOA1HHOA8TT1yKvMu1YXP3jWaFwoZ6Vo9Nw+DUZrzA==", "license": "MIT", "dependencies": { "motion-dom": "^12.0.0", @@ -7753,33 +6282,23 @@ }, "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==", "license": "ISC" }, "node_modules/fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "deprecated": "Upgrade to fsevents v2 to mitigate potential security issues", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "hasInstallScript": true, - "license": "MIT", "optional": true, "os": [ "darwin" ], - "dependencies": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - }, "engines": { - "node": ">= 4.0" + "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==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -7787,8 +6306,7 @@ }, "node_modules/function.prototype.name": { "version": "1.1.8", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", - "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -7807,24 +6325,28 @@ }, "node_modules/functional-red-black-tree": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true, "license": "MIT" }, "node_modules/functions-have-names": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/fuzzball": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/fuzzball/-/fuzzball-2.2.2.tgz", + "integrity": "sha512-NCJZdEur2qTZ6/dYjkvLnNOnDxN4JG1rOWSRJS2ser4cFGVqFNBu2JjudxU2kZrHqfKg1zmtHii/JmWLaEeDHw==", + "dependencies": { + "heap": ">=0.2.0", + "lodash": "^4.17.21", + "setimmediate": "^1.0.5" + } + }, "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, "license": "MIT", "engines": { @@ -7833,8 +6355,6 @@ }, "node_modules/get-intrinsic": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", - "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.2", @@ -7857,15 +6377,11 @@ }, "node_modules/get-own-enumerable-property-symbols": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", "dev": true, "license": "ISC" }, "node_modules/get-proto": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", - "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", @@ -7877,8 +6393,6 @@ }, "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, "license": "MIT", "engines": { @@ -7890,8 +6404,7 @@ }, "node_modules/get-symbol-description": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", - "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -7907,8 +6420,6 @@ }, "node_modules/get-value": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -7916,8 +6427,6 @@ }, "node_modules/getpass": { "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "license": "MIT", "dependencies": { "assert-plus": "^1.0.0" @@ -7925,9 +6434,6 @@ }, "node_modules/glob": { "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", @@ -7946,8 +6452,6 @@ }, "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==", "license": "ISC", "dependencies": { "is-glob": "^4.0.1" @@ -7958,8 +6462,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">=4" @@ -7967,8 +6469,7 @@ }, "node_modules/globalthis": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, "license": "MIT", "dependencies": { "define-properties": "^1.2.1", @@ -7983,8 +6484,6 @@ }, "node_modules/gopd": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", - "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -7995,14 +6494,10 @@ }, "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==", "license": "ISC" }, "node_modules/grunt-karma": { "version": "0.12.2", - "resolved": "https://registry.npmjs.org/grunt-karma/-/grunt-karma-0.12.2.tgz", - "integrity": "sha512-houkUR8sks8uliJ5khwvV4Cf2vrxSPkvCt+w9uwOOHhDOCLZ9ZE4/MeDmC7GgSajGK+h/svpacbKFHyjNbCsng==", "license": "MIT", "dependencies": { "lodash": "^3.10.1" @@ -8014,14 +6509,10 @@ }, "node_modules/grunt-karma/node_modules/lodash": { "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha512-9mDDwqVIma6OZX79ZlDACZl8sBm0TEnkf99zV3iMA4GzkIT/9hiqP5mY0HoT1iNLCrKc/R1HByV+yJfRWVJryQ==", "license": "MIT" }, "node_modules/har-schema": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", "license": "ISC", "engines": { "node": ">=4" @@ -8029,9 +6520,6 @@ }, "node_modules/har-validator": { "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "deprecated": "this library is no longer supported", "license": "MIT", "dependencies": { "ajv": "^6.12.3", @@ -8043,8 +6531,6 @@ }, "node_modules/har-validator/node_modules/ajv": { "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", @@ -8059,14 +6545,10 @@ }, "node_modules/har-validator/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==", "license": "MIT" }, "node_modules/has-bigints": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -8074,8 +6556,6 @@ }, "node_modules/has-binary2": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", "license": "MIT", "dependencies": { "isarray": "2.0.1" @@ -8083,20 +6563,14 @@ }, "node_modules/has-binary2/node_modules/isarray": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", "license": "MIT" }, "node_modules/has-cors": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==", "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">=8" @@ -8104,8 +6578,6 @@ }, "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==", "license": "MIT", "dependencies": { "es-define-property": "^1.0.0" @@ -8116,8 +6588,7 @@ }, "node_modules/has-proto": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", - "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, "license": "MIT", "dependencies": { "dunder-proto": "^1.0.0" @@ -8131,8 +6602,6 @@ }, "node_modules/has-symbols": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", - "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -8143,8 +6612,6 @@ }, "node_modules/has-tostringtag": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "license": "MIT", "dependencies": { "has-symbols": "^1.0.3" @@ -8158,8 +6625,6 @@ }, "node_modules/has-value": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", "license": "MIT", "dependencies": { "get-value": "^2.0.6", @@ -8172,8 +6637,6 @@ }, "node_modules/has-values": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", "license": "MIT", "dependencies": { "is-number": "^3.0.0", @@ -8185,8 +6648,6 @@ }, "node_modules/has-values/node_modules/kind-of": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" @@ -8197,8 +6658,6 @@ }, "node_modules/hasown": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "license": "MIT", "dependencies": { "function-bind": "^1.1.2" @@ -8207,25 +6666,25 @@ "node": ">= 0.4" } }, + "node_modules/heap": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", + "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==" + }, "node_modules/hoist-non-react-statics": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "license": "BSD-3-Clause", "dependencies": { "react-is": "^16.7.0" } }, "node_modules/hoist-non-react-statics/node_modules/react-is": { "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "license": "MIT" }, "node_modules/homophones": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/homophones/-/homophones-1.0.1.tgz", - "integrity": "sha512-fXEpWXOy5RqP2f68HFTT3ejvV+z4qV1CGw/Blz+VsYwhSTToNNdKThScJVkkzz/y9G6+3aTxL3dptRXjwn7jmQ==", "license": "MIT", "dependencies": { "axios": "^1.4.0", @@ -8235,14 +6694,10 @@ }, "node_modules/howler": { "version": "2.2.4", - "resolved": "https://registry.npmjs.org/howler/-/howler-2.2.4.tgz", - "integrity": "sha512-iARIBPgcQrwtEr+tALF+rapJ8qSc+Set2GJQl7xT1MQzWaVkFebdJhR3alVlSiUf5U7nAANKuj3aWpwerocD5w==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "depd": "2.0.0", @@ -8257,8 +6712,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.8" @@ -8266,8 +6719,6 @@ }, "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==", "license": "MIT", "dependencies": { "eventemitter3": "^4.0.0", @@ -8280,8 +6731,6 @@ }, "node_modules/http-signature": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "license": "MIT", "dependencies": { "assert-plus": "^1.0.0", @@ -8295,8 +6744,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, "license": "Apache-2.0", "engines": { @@ -8305,8 +6752,6 @@ }, "node_modules/husky": { "version": "9.1.6", - "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.6.tgz", - "integrity": "sha512-sqbjZKK7kf44hfdE94EoX8MZNk0n7HeW37O4YrVGCF4wzgQjp+akPAkfUK5LZ6KuR/6sqeAVuXHji+RzQgOn5A==", "dev": true, "license": "MIT", "bin": { @@ -8321,15 +6766,11 @@ }, "node_modules/hyphenate-style-name": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz", - "integrity": "sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ==", "dev": true, "license": "BSD-3-Clause" }, "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==", "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" @@ -8340,8 +6781,6 @@ }, "node_modules/ignore": { "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true, "license": "MIT", "engines": { @@ -8350,14 +6789,10 @@ }, "node_modules/immediate": { "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "license": "MIT" }, "node_modules/immer": { "version": "10.1.1", - "resolved": "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz", - "integrity": "sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==", "license": "MIT", "funding": { "type": "opencollective", @@ -8366,14 +6801,10 @@ }, "node_modules/immutable": { "version": "4.3.5", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", - "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "parent-module": "^1.0.0", @@ -8388,8 +6819,6 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, "license": "MIT", "engines": { @@ -8398,23 +6827,20 @@ }, "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==", "license": "MIT", "engines": { "node": ">=8" } }, "node_modules/indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg==" + "version": "0.0.1" + }, + "node_modules/indicasr-wasm": { + "resolved": "asr-utils/pkg", + "link": 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==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "license": "ISC", "dependencies": { "once": "^1.3.0", @@ -8423,14 +6849,10 @@ }, "node_modules/inherits": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "license": "ISC" }, "node_modules/internal-slot": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", - "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -8443,14 +6865,10 @@ }, "node_modules/inversify": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/inversify/-/inversify-5.1.1.tgz", - "integrity": "sha512-j8grHGDzv1v+8T1sAQ+3boTCntFPfvxLCkNcxB1J8qA0lUN+fAlSyYd+RXKvaPRL4AGyPxViutBEJHNXOyUdFQ==", "license": "MIT" }, "node_modules/is-accessor-descriptor": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz", - "integrity": "sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==", "license": "MIT", "dependencies": { "hasown": "^2.0.0" @@ -8461,8 +6879,6 @@ }, "node_modules/is-arguments": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -8477,8 +6893,6 @@ }, "node_modules/is-array-buffer": { "version": "3.0.5", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", - "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -8494,14 +6908,11 @@ }, "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==", "license": "MIT" }, "node_modules/is-async-function": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", - "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, "license": "MIT", "dependencies": { "async-function": "^1.0.0", @@ -8519,8 +6930,6 @@ }, "node_modules/is-bigint": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", - "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "license": "MIT", "dependencies": { "has-bigints": "^1.0.2" @@ -8534,8 +6943,6 @@ }, "node_modules/is-binary-path": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", "license": "MIT", "dependencies": { "binary-extensions": "^1.0.0" @@ -8546,8 +6953,6 @@ }, "node_modules/is-boolean-object": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", - "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -8562,14 +6967,10 @@ }, "node_modules/is-buffer": { "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", "license": "MIT" }, "node_modules/is-callable": { "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -8580,8 +6981,6 @@ }, "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==", "license": "MIT", "dependencies": { "hasown": "^2.0.0" @@ -8592,8 +6991,6 @@ }, "node_modules/is-data-descriptor": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz", - "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==", "license": "MIT", "dependencies": { "hasown": "^2.0.0" @@ -8604,8 +7001,7 @@ }, "node_modules/is-data-view": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", - "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -8621,8 +7017,6 @@ }, "node_modules/is-date-object": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", - "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -8637,8 +7031,6 @@ }, "node_modules/is-descriptor": { "version": "0.1.7", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz", - "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -8650,8 +7042,6 @@ }, "node_modules/is-extendable": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -8659,8 +7049,6 @@ }, "node_modules/is-extglob": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -8668,8 +7056,7 @@ }, "node_modules/is-finalizationregistry": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", - "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3" @@ -8683,8 +7070,6 @@ }, "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, "license": "MIT", "engines": { @@ -8693,8 +7078,7 @@ }, "node_modules/is-generator-function": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", - "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -8711,8 +7095,6 @@ }, "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==", "license": "MIT", "dependencies": { "is-extglob": "^2.1.1" @@ -8723,21 +7105,15 @@ }, "node_modules/is-in-browser": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz", - "integrity": "sha512-FeXIBgG/CPGd/WUxuEyvgGTEfwiG9Z4EKGxjNMRqviiIIfsmgrpnHLffEDdwUHqNva1VEW91o3xBT/m8Elgl9g==", "dev": true, "license": "MIT" }, "node_modules/is-lite": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-lite/-/is-lite-1.2.1.tgz", - "integrity": "sha512-pgF+L5bxC+10hLBgf6R2P4ZZUBOQIIacbdo8YvuCP8/JvsWxG7aZ9p10DYuLtifFci4l3VITphhMlMV4Y+urPw==", "license": "MIT" }, "node_modules/is-map": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -8748,8 +7124,7 @@ }, "node_modules/is-negative-zero": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -8760,8 +7135,6 @@ }, "node_modules/is-number": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", "license": "MIT", "dependencies": { "kind-of": "^3.0.2" @@ -8772,8 +7145,6 @@ }, "node_modules/is-number-object": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", - "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -8788,8 +7159,6 @@ }, "node_modules/is-obj": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", "dev": true, "license": "MIT", "engines": { @@ -8798,8 +7167,6 @@ }, "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==", "license": "MIT", "dependencies": { "isobject": "^3.0.1" @@ -8810,8 +7177,6 @@ }, "node_modules/is-regex": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", - "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -8828,8 +7193,6 @@ }, "node_modules/is-regexp": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", "dev": true, "license": "MIT", "engines": { @@ -8838,8 +7201,6 @@ }, "node_modules/is-set": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -8850,8 +7211,6 @@ }, "node_modules/is-shared-array-buffer": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", - "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "license": "MIT", "dependencies": { "call-bound": "^1.0.3" @@ -8865,8 +7224,6 @@ }, "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, "license": "MIT", "engines": { @@ -8878,8 +7235,6 @@ }, "node_modules/is-string": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", - "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -8894,8 +7249,6 @@ }, "node_modules/is-symbol": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", - "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -8911,8 +7264,7 @@ }, "node_modules/is-typed-array": { "version": "1.1.15", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", - "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, "license": "MIT", "dependencies": { "which-typed-array": "^1.1.16" @@ -8926,14 +7278,15 @@ }, "node_modules/is-typedarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "license": "MIT" }, + "node_modules/is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==" + }, "node_modules/is-weakmap": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -8944,8 +7297,7 @@ }, "node_modules/is-weakref": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", - "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3" @@ -8959,8 +7311,6 @@ }, "node_modules/is-weakset": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", - "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -8975,8 +7325,6 @@ }, "node_modules/is-windows": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -8984,14 +7332,10 @@ }, "node_modules/isarray": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", "license": "MIT" }, "node_modules/isbinaryfile": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", - "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", "license": "MIT", "dependencies": { "buffer-alloc": "^1.2.0" @@ -9002,15 +7346,11 @@ }, "node_modules/isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true, "license": "ISC" }, "node_modules/isobject": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -9018,14 +7358,11 @@ }, "node_modules/isstream": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "license": "MIT" }, "node_modules/iterator.prototype": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz", - "integrity": "sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==", + "dev": true, "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -9041,8 +7378,6 @@ }, "node_modules/jest-diff": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz", - "integrity": "sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==", "license": "MIT", "dependencies": { "chalk": "^4.0.0", @@ -9056,8 +7391,6 @@ }, "node_modules/jest-diff/node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -9072,8 +7405,6 @@ }, "node_modules/jest-diff/node_modules/pretty-format": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", "license": "MIT", "dependencies": { "@jest/schemas": "^29.4.3", @@ -9086,8 +7417,6 @@ }, "node_modules/jest-diff/node_modules/pretty-format/node_modules/ansi-styles": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "license": "MIT", "engines": { "node": ">=10" @@ -9098,8 +7427,6 @@ }, "node_modules/jest-get-type": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", - "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", "license": "MIT", "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -9107,8 +7434,6 @@ }, "node_modules/jest-matcher-utils": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz", - "integrity": "sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==", "license": "MIT", "dependencies": { "chalk": "^4.0.0", @@ -9122,8 +7447,6 @@ }, "node_modules/jest-matcher-utils/node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -9138,8 +7461,6 @@ }, "node_modules/jest-matcher-utils/node_modules/pretty-format": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", "license": "MIT", "dependencies": { "@jest/schemas": "^29.4.3", @@ -9152,8 +7473,6 @@ }, "node_modules/jest-matcher-utils/node_modules/pretty-format/node_modules/ansi-styles": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "license": "MIT", "engines": { "node": ">=10" @@ -9164,8 +7483,6 @@ }, "node_modules/jest-message-util": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz", - "integrity": "sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==", "license": "MIT", "dependencies": { "@babel/code-frame": "^7.12.13", @@ -9184,8 +7501,6 @@ }, "node_modules/jest-message-util/node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -9200,8 +7515,6 @@ }, "node_modules/jest-message-util/node_modules/pretty-format": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz", - "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==", "license": "MIT", "dependencies": { "@jest/schemas": "^29.4.3", @@ -9214,8 +7527,6 @@ }, "node_modules/jest-message-util/node_modules/pretty-format/node_modules/ansi-styles": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "license": "MIT", "engines": { "node": ">=10" @@ -9226,8 +7537,6 @@ }, "node_modules/jest-util": { "version": "29.4.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz", - "integrity": "sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==", "license": "MIT", "dependencies": { "@jest/types": "^29.4.3", @@ -9243,8 +7552,6 @@ }, "node_modules/jest-util/node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "license": "MIT", "dependencies": { "ansi-styles": "^4.1.0", @@ -9259,14 +7566,10 @@ }, "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==", "license": "MIT" }, "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, "license": "MIT", "dependencies": { @@ -9279,14 +7582,10 @@ }, "node_modules/jsbn": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", "license": "MIT" }, "node_modules/jsesc": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "license": "MIT", "bin": { "jsesc": "bin/jsesc" @@ -9297,46 +7596,32 @@ }, "node_modules/json-buffer": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "dev": true, "license": "MIT" }, "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==", "license": "MIT" }, "node_modules/json-schema": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "license": "(AFL-2.1 OR BSD-3-Clause)" }, "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==", "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true, "license": "MIT" }, "node_modules/json-stringify-safe": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "license": "ISC" }, "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, "license": "MIT", "bin": { @@ -9348,8 +7633,6 @@ }, "node_modules/jsonld": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/jsonld/-/jsonld-5.2.0.tgz", - "integrity": "sha512-JymgT6Xzk5CHEmHuEyvoTNviEPxv6ihLWSPu1gFdtjSAyM6cFqNrv02yS/SIur3BBIkCf0HjizRc24d8/FfQKw==", "license": "BSD-3-Clause", "dependencies": { "@digitalbazaar/http-client": "^1.1.0", @@ -9363,8 +7646,6 @@ }, "node_modules/jsonld-signatures": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/jsonld-signatures/-/jsonld-signatures-6.0.0.tgz", - "integrity": "sha512-GIh5DCZ5g5vQBAFcjSDHmYyTaD/fYh5KwlAiKgx83VRzcQNNgzeG7DsLdXcgyCxEai9qIM9u2frZAInKDN5+og==", "license": "BSD-3-Clause", "dependencies": { "base64url": "^3.0.1", @@ -9380,8 +7661,6 @@ }, "node_modules/jsonld-signatures/node_modules/jsonld": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jsonld/-/jsonld-2.0.2.tgz", - "integrity": "sha512-/TQzRe75/3h2khu57IUojha5oat+M82bm8RYw0jLhlmmPrW/kTWAZ9nGzKPfZWnPYnVVJJMQVc/pU8HCmpv9xg==", "license": "BSD-3-Clause", "dependencies": { "canonicalize": "^1.0.1", @@ -9397,8 +7676,6 @@ }, "node_modules/jsonld-signatures/node_modules/rdf-canonize": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/rdf-canonize/-/rdf-canonize-1.2.0.tgz", - "integrity": "sha512-MQdcRDz4+82nUrEb3hNQangBDpmep15uMmnWclGi/1KS0bNVc8oHpoNI0PFLHZsvwgwRzH31bO1JAScqUAstvw==", "license": "BSD-3-Clause", "dependencies": { "node-forge": "^0.10.0", @@ -9410,8 +7687,6 @@ }, "node_modules/jsonld/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==", "license": "ISC", "dependencies": { "yallist": "^4.0.0" @@ -9422,14 +7697,10 @@ }, "node_modules/jsonld/node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "license": "ISC" }, "node_modules/jsprim": { "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "license": "MIT", "dependencies": { "assert-plus": "1.0.0", @@ -9443,8 +7714,6 @@ }, "node_modules/jss": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss/-/jss-10.10.0.tgz", - "integrity": "sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw==", "dev": true, "license": "MIT", "dependencies": { @@ -9460,8 +7729,6 @@ }, "node_modules/jss-plugin-camel-case": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.10.0.tgz", - "integrity": "sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw==", "dev": true, "license": "MIT", "dependencies": { @@ -9472,8 +7739,6 @@ }, "node_modules/jss-plugin-default-unit": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.10.0.tgz", - "integrity": "sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9483,8 +7748,6 @@ }, "node_modules/jss-plugin-global": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.10.0.tgz", - "integrity": "sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A==", "dev": true, "license": "MIT", "dependencies": { @@ -9494,8 +7757,6 @@ }, "node_modules/jss-plugin-nested": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.10.0.tgz", - "integrity": "sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA==", "dev": true, "license": "MIT", "dependencies": { @@ -9506,8 +7767,6 @@ }, "node_modules/jss-plugin-props-sort": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.10.0.tgz", - "integrity": "sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg==", "dev": true, "license": "MIT", "dependencies": { @@ -9517,8 +7776,6 @@ }, "node_modules/jss-plugin-rule-value-function": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.10.0.tgz", - "integrity": "sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g==", "dev": true, "license": "MIT", "dependencies": { @@ -9529,8 +7786,6 @@ }, "node_modules/jss-plugin-vendor-prefixer": { "version": "10.10.0", - "resolved": "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.10.0.tgz", - "integrity": "sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg==", "dev": true, "license": "MIT", "dependencies": { @@ -9541,8 +7796,7 @@ }, "node_modules/jsx-ast-utils": { "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, "license": "MIT", "dependencies": { "array-includes": "^3.1.6", @@ -9556,8 +7810,6 @@ }, "node_modules/jszip": { "version": "3.10.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", - "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "license": "(MIT OR GPL-3.0-or-later)", "dependencies": { "lie": "~3.3.0", @@ -9568,8 +7820,6 @@ }, "node_modules/jwt-decode": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-4.0.0.tgz", - "integrity": "sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA==", "license": "MIT", "engines": { "node": ">=18" @@ -9577,8 +7827,6 @@ }, "node_modules/karma": { "version": "3.1.4", - "resolved": "https://registry.npmjs.org/karma/-/karma-3.1.4.tgz", - "integrity": "sha512-31Vo8Qr5glN+dZEVIpnPCxEGleqE0EY6CtC2X9TagRV3rRQ3SNrvfhddICkJgUK3AgqpeKSZau03QumTGhGoSw==", "license": "MIT", "dependencies": { "bluebird": "^3.3.0", @@ -9619,15 +7867,10 @@ }, "node_modules/karma/node_modules/flatted": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "license": "ISC" }, "node_modules/karma/node_modules/rimraf": { "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", "license": "ISC", "dependencies": { "glob": "^7.1.3" @@ -9638,8 +7881,6 @@ }, "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==", "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -9647,8 +7888,6 @@ }, "node_modules/keyv": { "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "license": "MIT", "dependencies": { @@ -9657,8 +7896,6 @@ }, "node_modules/kind-of": { "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "license": "MIT", "dependencies": { "is-buffer": "^1.1.5" @@ -9669,8 +7906,6 @@ }, "node_modules/ky": { "version": "0.25.1", - "resolved": "https://registry.npmjs.org/ky/-/ky-0.25.1.tgz", - "integrity": "sha512-PjpCEWlIU7VpiMVrTwssahkYXX1by6NCT0fhTUX34F3DTinARlgMpriuroolugFPcMgpPWrOW4mTb984Qm1RXA==", "license": "MIT", "engines": { "node": ">=10" @@ -9681,8 +7916,6 @@ }, "node_modules/ky-universal": { "version": "0.8.2", - "resolved": "https://registry.npmjs.org/ky-universal/-/ky-universal-0.8.2.tgz", - "integrity": "sha512-xe0JaOH9QeYxdyGLnzUOVGK4Z6FGvDVzcXFTdrYA1f33MZdEa45sUDaMBy98xQMcsd2XIBrTXRrRYnegcSdgVQ==", "license": "MIT", "dependencies": { "abort-controller": "^3.0.0", @@ -9706,8 +7939,6 @@ }, "node_modules/ky-universal/node_modules/node-fetch": { "version": "3.0.0-beta.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.0.0-beta.9.tgz", - "integrity": "sha512-RdbZCEynH2tH46+tj0ua9caUHVWrd/RHnRfvly2EVdqGmI3ndS1Vn/xjm5KuGejDt2RNDQsVRLPNd2QPwcewVg==", "license": "MIT", "dependencies": { "data-uri-to-buffer": "^3.0.1", @@ -9723,14 +7954,12 @@ }, "node_modules/language-subtag-registry": { "version": "0.3.22", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", - "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==", + "dev": true, "license": "CC0-1.0" }, "node_modules/language-tags": { "version": "1.0.9", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", - "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", + "dev": true, "license": "MIT", "dependencies": { "language-subtag-registry": "^0.3.20" @@ -9741,8 +7970,6 @@ }, "node_modules/levn": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9755,8 +7982,6 @@ }, "node_modules/lie": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", "license": "MIT", "dependencies": { "immediate": "~3.0.5" @@ -9764,14 +7989,10 @@ }, "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==", "license": "MIT" }, "node_modules/lint-staged": { "version": "11.2.6", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-11.2.6.tgz", - "integrity": "sha512-Vti55pUnpvPE0J9936lKl0ngVeTdSZpEdTNhASbkaWX7J5R9OEifo1INBGQuGW4zmy6OG+TcWPJ3m5yuy5Q8Tg==", "dev": true, "license": "MIT", "dependencies": { @@ -9799,8 +8020,6 @@ }, "node_modules/lint-staged/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, "license": "MIT", "dependencies": { @@ -9815,8 +8034,6 @@ }, "node_modules/listr2": { "version": "3.14.0", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", - "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", "dev": true, "license": "MIT", "dependencies": { @@ -9843,35 +8060,25 @@ }, "node_modules/listr2/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, "license": "MIT" }, "node_modules/lodash": { "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "license": "MIT" }, "node_modules/lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true, "license": "MIT" }, "node_modules/lodash.truncate": { "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", "dev": true, "license": "MIT" }, "node_modules/log-update": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", "dev": true, "license": "MIT", "dependencies": { @@ -9889,8 +8096,6 @@ }, "node_modules/log-update/node_modules/slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9907,8 +8112,6 @@ }, "node_modules/log-update/node_modules/wrap-ansi": { "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "license": "MIT", "dependencies": { @@ -9922,9 +8125,6 @@ }, "node_modules/log4js": { "version": "3.0.6", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-3.0.6.tgz", - "integrity": "sha512-ezXZk6oPJCWL483zj64pNkMuY/NcRX5MPiB0zE6tjZM137aeusrOnW1ecxgF9cmwMWkBMhjteQxBPoZBh9FDxQ==", - "deprecated": "3.x is no longer supported. Please upgrade to 6.x or higher.", "license": "Apache-2.0", "dependencies": { "circular-json": "^0.5.5", @@ -9939,8 +8139,6 @@ }, "node_modules/log4js/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "license": "MIT", "dependencies": { "ms": "^2.1.1" @@ -9948,8 +8146,6 @@ }, "node_modules/loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "license": "MIT", "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" @@ -9960,8 +8156,6 @@ }, "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==", "license": "ISC", "dependencies": { "yallist": "^3.0.2" @@ -9969,8 +8163,6 @@ }, "node_modules/lz-string": { "version": "1.5.0", - "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", - "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", "license": "MIT", "bin": { "lz-string": "bin/bin.js" @@ -9978,14 +8170,10 @@ }, "node_modules/make-error": { "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "license": "ISC" }, "node_modules/map-cache": { "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -9993,8 +8181,6 @@ }, "node_modules/map-visit": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", "license": "MIT", "dependencies": { "object-visit": "^1.0.0" @@ -10005,8 +8191,6 @@ }, "node_modules/math-intrinsics": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", - "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -10014,8 +8198,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -10023,21 +8205,15 @@ }, "node_modules/memoize-one": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", - "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==", "license": "MIT" }, "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, "license": "MIT" }, "node_modules/metaphone": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/metaphone/-/metaphone-2.0.1.tgz", - "integrity": "sha512-YR9RHhgIjoS77yhz84De0ffUKFGTmF58a+xXFNkbHSK/aBPznGKhjR2p29rYSPs0t885/AKKZCOdUn7N6rpKiA==", "license": "MIT", "bin": { "metaphone": "cli.js" @@ -10049,8 +8225,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==", "license": "MIT", "dependencies": { "braces": "^3.0.2", @@ -10062,8 +8236,6 @@ }, "node_modules/micromatch/node_modules/braces": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "license": "MIT", "dependencies": { "fill-range": "^7.0.1" @@ -10074,8 +8246,6 @@ }, "node_modules/micromatch/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==", "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" @@ -10086,8 +8256,6 @@ }, "node_modules/micromatch/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==", "license": "MIT", "engines": { "node": ">=0.12.0" @@ -10095,8 +8263,6 @@ }, "node_modules/micromatch/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==", "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -10107,8 +8273,6 @@ }, "node_modules/mime": { "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "license": "MIT", "bin": { "mime": "cli.js" @@ -10119,8 +8283,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -10128,8 +8290,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==", "license": "MIT", "dependencies": { "mime-db": "1.52.0" @@ -10140,8 +8300,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, "license": "MIT", "engines": { @@ -10150,8 +8308,6 @@ }, "node_modules/min-indent": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "license": "MIT", "engines": { "node": ">=4" @@ -10159,8 +8315,6 @@ }, "node_modules/minimatch": { "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" @@ -10171,14 +8325,10 @@ }, "node_modules/minimist": { "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw==", "license": "MIT" }, "node_modules/mixin-deep": { "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", "license": "MIT", "dependencies": { "for-in": "^1.0.2", @@ -10190,8 +8340,6 @@ }, "node_modules/mixin-deep/node_modules/is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" @@ -10202,8 +8350,6 @@ }, "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==", "license": "MIT", "dependencies": { "minimist": "^1.2.6" @@ -10214,8 +8360,6 @@ }, "node_modules/mkdirp/node_modules/minimist": { "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -10223,8 +8367,6 @@ }, "node_modules/motion-dom": { "version": "12.0.0", - "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.0.0.tgz", - "integrity": "sha512-CvYd15OeIR6kHgMdonCc1ihsaUG4MYh/wrkz8gZ3hBX/uamyZCXN9S9qJoYF03GqfTt7thTV/dxnHYX4+55vDg==", "license": "MIT", "dependencies": { "motion-utils": "^12.0.0" @@ -10232,27 +8374,20 @@ }, "node_modules/motion-utils": { "version": "12.0.0", - "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.0.0.tgz", - "integrity": "sha512-MNFiBKbbqnmvOjkPyOKgHUp3Q6oiokLkI1bEwm5QA28cxMZrv0CbbBGDNmhF6DIXsi1pCQBSs0dX8xjeER1tmA==", "license": "MIT" }, "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==", "license": "MIT" }, "node_modules/nan": { "version": "2.22.2", "resolved": "https://registry.npmjs.org/nan/-/nan-2.22.2.tgz", "integrity": "sha512-DANghxFkS1plDdRsX0X9pm0Z6SJNN6gBdtXfanwoZ8hooC5gosGFSBGRYHUVPz1asKA/kMRqDRdHrluZ61SpBQ==", - "license": "MIT", "optional": true }, "node_modules/nanoid": { "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", "dev": true, "funding": [ { @@ -10270,8 +8405,6 @@ }, "node_modules/nanomatch": { "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", @@ -10292,8 +8425,6 @@ }, "node_modules/nanomatch/node_modules/define-property": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "license": "MIT", "dependencies": { "is-descriptor": "^1.0.2", @@ -10305,8 +8436,6 @@ }, "node_modules/nanomatch/node_modules/extend-shallow": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", @@ -10318,8 +8447,6 @@ }, "node_modules/nanomatch/node_modules/is-descriptor": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -10331,8 +8458,6 @@ }, "node_modules/nanomatch/node_modules/is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" @@ -10343,8 +8468,6 @@ }, "node_modules/nanomatch/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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -10352,15 +8475,11 @@ }, "node_modules/natural-compare": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true, "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -10368,8 +8487,6 @@ }, "node_modules/node-fetch": { "version": "2.6.5", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz", - "integrity": "sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ==", "license": "MIT", "dependencies": { "whatwg-url": "^5.0.0" @@ -10380,8 +8497,6 @@ }, "node_modules/node-forge": { "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", "license": "(BSD-3-Clause OR GPL-2.0)", "engines": { "node": ">= 6.0.0" @@ -10389,8 +8504,6 @@ }, "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==", "license": "MIT", "optional": true, "bin": { @@ -10401,15 +8514,11 @@ }, "node_modules/node-releases": { "version": "2.0.18", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", - "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true, "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -10417,8 +8526,6 @@ }, "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, "license": "MIT", "dependencies": { @@ -10430,8 +8537,6 @@ }, "node_modules/oauth-sign": { "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", "license": "Apache-2.0", "engines": { "node": "*" @@ -10439,22 +8544,16 @@ }, "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==", "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha512-S0sN3agnVh2SZNEIGc0N1X4Z5K0JeFbGBrnuZpsxuUh5XLF0BnvWkMjRXo/zGKLd/eghvNIKcx1pQkmUjXIyrA==" + "version": "0.0.3" }, "node_modules/object-copy": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", "license": "MIT", "dependencies": { "copy-descriptor": "^0.1.0", @@ -10467,8 +8566,6 @@ }, "node_modules/object-inspect": { "version": "1.13.4", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", - "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -10479,8 +8576,6 @@ }, "node_modules/object-is": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -10495,8 +8590,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -10504,8 +8597,6 @@ }, "node_modules/object-visit": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", "license": "MIT", "dependencies": { "isobject": "^3.0.0" @@ -10516,8 +8607,6 @@ }, "node_modules/object.assign": { "version": "4.1.7", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", - "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -10536,8 +8625,7 @@ }, "node_modules/object.entries": { "version": "1.1.9", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", - "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -10551,8 +8639,7 @@ }, "node_modules/object.fromentries": { "version": "2.0.8", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", - "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -10569,8 +8656,7 @@ }, "node_modules/object.groupby": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.2", @@ -10581,8 +8667,6 @@ }, "node_modules/object.pick": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", "license": "MIT", "dependencies": { "isobject": "^3.0.1" @@ -10593,8 +8677,7 @@ }, "node_modules/object.values": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", - "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -10611,8 +8694,6 @@ }, "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==", "license": "MIT", "dependencies": { "ee-first": "1.1.1" @@ -10623,8 +8704,6 @@ }, "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==", "license": "ISC", "dependencies": { "wrappy": "1" @@ -10632,8 +8711,6 @@ }, "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, "license": "MIT", "dependencies": { @@ -10648,8 +8725,6 @@ }, "node_modules/optimist": { "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha512-snN4O4TkigujZphWLN0E//nQmm7790RYaE53DdL7ZYwee2D8DDo9/EyYiKUfN3rneWUjhJnueija3G9I2i0h3g==", "license": "MIT/X11", "dependencies": { "minimist": "~0.0.1", @@ -10658,8 +8733,6 @@ }, "node_modules/optionator": { "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", "dev": true, "license": "MIT", "dependencies": { @@ -10676,8 +8749,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -10685,8 +8756,7 @@ }, "node_modules/own-keys": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", - "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, "license": "MIT", "dependencies": { "get-intrinsic": "^1.2.6", @@ -10702,8 +8772,6 @@ }, "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, "license": "MIT", "dependencies": { @@ -10718,14 +8786,10 @@ }, "node_modules/pako": { "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "license": "(MIT AND Zlib)" }, "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==", "license": "MIT", "dependencies": { "callsites": "^3.0.0" @@ -10736,8 +8800,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==", "license": "MIT", "dependencies": { "@babel/code-frame": "^7.0.0", @@ -10754,8 +8816,6 @@ }, "node_modules/parseqs": { "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha512-B3Nrjw2aL7aI4TDujOzfA4NsEc4u1lVcIRE0xesutH8kjeWF70uk+W5cBlIQx04zUH9NTBvuN36Y9xLRPK6Jjw==", "license": "MIT", "dependencies": { "better-assert": "~1.0.0" @@ -10763,8 +8823,6 @@ }, "node_modules/parseuri": { "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha512-ijhdxJu6l5Ru12jF0JvzXVPvsC+VibqeaExlNoMhWN6VQ79PGjkmc7oA4W1lp00sFkNyj0fx6ivPLdV51/UMog==", "license": "MIT", "dependencies": { "better-assert": "~1.0.0" @@ -10772,8 +8830,6 @@ }, "node_modules/parseurl": { "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "license": "MIT", "engines": { "node": ">= 0.8" @@ -10781,8 +8837,6 @@ }, "node_modules/pascalcase": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -10790,14 +8844,10 @@ }, "node_modules/path-dirname": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -10805,8 +8855,6 @@ }, "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, "license": "MIT", "engines": { @@ -10815,14 +8863,10 @@ }, "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==", "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">=8" @@ -10830,20 +8874,14 @@ }, "node_modules/performance-now": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", "license": "MIT" }, "node_modules/picocolors": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "license": "ISC" }, "node_modules/picomatch": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "license": "MIT", "engines": { "node": ">=8.6" @@ -10854,8 +8892,6 @@ }, "node_modules/please-upgrade-node": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", "dev": true, "license": "MIT", "dependencies": { @@ -10864,9 +8900,6 @@ }, "node_modules/popper.js": { "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", "license": "MIT", "funding": { "type": "opencollective", @@ -10875,8 +8908,6 @@ }, "node_modules/posix-character-classes": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -10884,8 +8915,6 @@ }, "node_modules/possible-typed-array-names": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", - "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -10893,8 +8922,6 @@ }, "node_modules/postcss": { "version": "8.5.4", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.4.tgz", - "integrity": "sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==", "dev": true, "funding": [ { @@ -10922,8 +8949,6 @@ }, "node_modules/prelude-ls": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, "license": "MIT", "engines": { @@ -10932,8 +8957,6 @@ }, "node_modules/prettier": { "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", "dev": true, "license": "MIT", "bin": { @@ -10948,8 +8971,6 @@ }, "node_modules/prettier-linter-helpers": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, "license": "MIT", "dependencies": { @@ -10961,8 +8982,6 @@ }, "node_modules/pretty-format": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1", @@ -10975,8 +8994,6 @@ }, "node_modules/pretty-format/node_modules/ansi-styles": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "license": "MIT", "engines": { "node": ">=10" @@ -10987,20 +9004,14 @@ }, "node_modules/pretty-format/node_modules/react-is": { "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "license": "MIT" }, "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==", "license": "MIT" }, "node_modules/progress": { "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", "dev": true, "license": "MIT", "engines": { @@ -11009,8 +9020,6 @@ }, "node_modules/prop-types": { "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "license": "MIT", "dependencies": { "loose-envify": "^1.4.0", @@ -11020,32 +9029,22 @@ }, "node_modules/prop-types/node_modules/react-is": { "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "license": "MIT" }, "node_modules/proxy-from-env": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", "license": "MIT" }, "node_modules/pseudomap": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "license": "ISC" }, "node_modules/psl": { "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "license": "MIT" }, "node_modules/punycode": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "license": "MIT", "engines": { "node": ">=6" @@ -11053,8 +9052,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==", "license": "MIT", "engines": { "node": ">=0.9" @@ -11062,8 +9059,6 @@ }, "node_modules/qs": { "version": "6.13.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", - "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.0.6" @@ -11077,8 +9072,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -11086,8 +9079,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==", "license": "MIT", "dependencies": { "bytes": "3.1.2", @@ -11101,8 +9092,6 @@ }, "node_modules/rdf-canonize": { "version": "3.4.0", - "resolved": "https://registry.npmjs.org/rdf-canonize/-/rdf-canonize-3.4.0.tgz", - "integrity": "sha512-fUeWjrkOO0t1rg7B2fdyDTvngj+9RlUyL92vOdiB7c0FPguWVsniIMjEtHH+meLBO9rzkUlUzBVXgWrjI8P9LA==", "license": "BSD-3-Clause", "dependencies": { "setimmediate": "^1.0.5" @@ -11113,8 +9102,6 @@ }, "node_modules/react": { "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", - "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11126,14 +9113,10 @@ }, "node_modules/react-audio-analyser": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/react-audio-analyser/-/react-audio-analyser-1.0.0.tgz", - "integrity": "sha512-wFxqgIhrjkohNWxdzN3uD0s7tCZRiGWIUmE4hzR0goWnY0NRmPvJkKZuXTU48WIvewVYe4ZksmPGyaFLAuO86Q==", "license": "MIT" }, "node_modules/react-audio-player": { "version": "0.17.0", - "resolved": "https://registry.npmjs.org/react-audio-player/-/react-audio-player-0.17.0.tgz", - "integrity": "sha512-aCZgusPxA9HK7rLZcTdhTbBH9l6do9vn3NorgoDZRxRxJlOy9uZWzPaKjd7QdcuP2vXpxGA/61JMnnOEY7NXeA==", "license": "MIT", "dependencies": { "prop-types": "^15.7.2" @@ -11145,8 +9128,6 @@ }, "node_modules/react-confetti": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/react-confetti/-/react-confetti-6.1.0.tgz", - "integrity": "sha512-7Ypx4vz0+g8ECVxr88W9zhcQpbeujJAVqL14ZnXJ3I23mOI9/oBVTQ3dkJhUmB0D6XOtCZEM6N0Gm9PMngkORw==", "license": "MIT", "dependencies": { "tween-functions": "^1.2.0" @@ -11160,8 +9141,6 @@ }, "node_modules/react-dom": { "version": "18.3.1", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", - "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "license": "MIT", "dependencies": { "loose-envify": "^1.1.0", @@ -11173,8 +9152,6 @@ }, "node_modules/react-floater": { "version": "0.7.9", - "resolved": "https://registry.npmjs.org/react-floater/-/react-floater-0.7.9.tgz", - "integrity": "sha512-NXqyp9o8FAXOATOEo0ZpyaQ2KPb4cmPMXGWkx377QtJkIXHlHRAGer7ai0r0C1kG5gf+KJ6Gy+gdNIiosvSicg==", "license": "MIT", "dependencies": { "deepmerge": "^4.3.1", @@ -11190,20 +9167,14 @@ }, "node_modules/react-floater/node_modules/@gilbarbara/deep-equal": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.1.2.tgz", - "integrity": "sha512-jk+qzItoEb0D0xSSmrKDDzf9sheQj/BAPxlgNxgmOaA3mxpUa6ndJLYGZKsJnIVEQSD8zcTbyILz7I0HcnBCRA==", "license": "MIT" }, "node_modules/react-floater/node_modules/is-lite": { "version": "0.8.2", - "resolved": "https://registry.npmjs.org/is-lite/-/is-lite-0.8.2.tgz", - "integrity": "sha512-JZfH47qTsslwaAsqbMI3Q6HNNjUuq6Cmzzww50TdP5Esb6e1y2sK2UAaZZuzfAzpoI2AkxoPQapZdlDuP6Vlsw==", "license": "MIT" }, "node_modules/react-floater/node_modules/tree-changes": { "version": "0.9.3", - "resolved": "https://registry.npmjs.org/tree-changes/-/tree-changes-0.9.3.tgz", - "integrity": "sha512-vvvS+O6kEeGRzMglTKbc19ltLWNtmNt1cpBoSYLj/iEcPVvpJasemKOlxBrmZaCtDJoF+4bwv3m01UKYi8mukQ==", "license": "MIT", "dependencies": { "@gilbarbara/deep-equal": "^0.1.1", @@ -11212,8 +9183,6 @@ }, "node_modules/react-infinite-scroll-component": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/react-infinite-scroll-component/-/react-infinite-scroll-component-6.1.0.tgz", - "integrity": "sha512-SQu5nCqy8DxQWpnUVLx7V7b7LcA37aM7tvoWjTLZp1dk6EJibM5/4EJKzOnl07/BsM1Y40sKLuqjCwwH/xV0TQ==", "license": "MIT", "dependencies": { "throttle-debounce": "^2.1.0" @@ -11224,8 +9193,6 @@ }, "node_modules/react-innertext": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/react-innertext/-/react-innertext-1.1.5.tgz", - "integrity": "sha512-PWAqdqhxhHIv80dT9znP2KvS+hfkbRovFp4zFYHFFlOoQLRiawIic81gKb3U1wEyJZgMwgs3JoLtwryASRWP3Q==", "license": "MIT", "peerDependencies": { "@types/react": ">=0.0.0 <=99", @@ -11234,14 +9201,10 @@ }, "node_modules/react-is": { "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", "license": "MIT" }, "node_modules/react-joyride": { "version": "2.9.3", - "resolved": "https://registry.npmjs.org/react-joyride/-/react-joyride-2.9.3.tgz", - "integrity": "sha512-1+Mg34XK5zaqJ63eeBhqdbk7dlGCFp36FXwsEvgpjqrtyywX2C6h9vr3jgxP0bGHCw8Ilsp/nRDzNVq6HJ3rNw==", "license": "MIT", "dependencies": { "@gilbarbara/deep-equal": "^0.3.1", @@ -11263,14 +9226,10 @@ }, "node_modules/react-joyride/node_modules/react-is": { "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "license": "MIT" }, "node_modules/react-joyride/node_modules/type-fest": { "version": "4.39.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz", - "integrity": "sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w==", "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=16" @@ -11281,14 +9240,10 @@ }, "node_modules/react-lifecycles-compat": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", "license": "MIT" }, "node_modules/react-redux": { "version": "9.1.2", - "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-9.1.2.tgz", - "integrity": "sha512-0OA4dhM1W48l3uzmv6B7TXPCGmokUU4p1M44DGN2/D9a1FjVPukVjER1PcPX97jIg6aUeLq1XJo1IpfbgULn0w==", "license": "MIT", "dependencies": { "@types/use-sync-external-store": "^0.0.3", @@ -11310,8 +9265,6 @@ }, "node_modules/react-refresh": { "version": "0.17.0", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", - "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", "dev": true, "license": "MIT", "engines": { @@ -11320,8 +9273,6 @@ }, "node_modules/react-router": { "version": "6.8.1", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.8.1.tgz", - "integrity": "sha512-Jgi8BzAJQ8MkPt8ipXnR73rnD7EmZ0HFFb7jdQU24TynGW1Ooqin2KVDN9voSC+7xhqbbCd2cjGUepb6RObnyg==", "license": "MIT", "dependencies": { "@remix-run/router": "1.3.2" @@ -11335,8 +9286,6 @@ }, "node_modules/react-router-dom": { "version": "6.8.1", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.8.1.tgz", - "integrity": "sha512-67EXNfkQgf34P7+PSb6VlBuaacGhkKn3kpE51+P6zYSG2kiRoumXEL6e27zTa9+PGF2MNXbgIUHTVlleLbIcHQ==", "license": "MIT", "dependencies": { "@remix-run/router": "1.3.2", @@ -11352,8 +9301,6 @@ }, "node_modules/react-speech-recognition": { "version": "3.10.0", - "resolved": "https://registry.npmjs.org/react-speech-recognition/-/react-speech-recognition-3.10.0.tgz", - "integrity": "sha512-EVSr4Ik8l9urwdPiK2r0+ADrLyDDrjB0qBRdUWO+w2MfwEBrj6NuRmy1GD3x7BU/V6/hab0pl8Lupen0zwlJyw==", "license": "MIT", "peerDependencies": { "react": ">=16.8.0" @@ -11361,8 +9308,6 @@ }, "node_modules/react-transition-group": { "version": "4.4.5", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", - "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", "license": "BSD-3-Clause", "dependencies": { "@babel/runtime": "^7.5.5", @@ -11377,8 +9322,6 @@ }, "node_modules/react-virtualized": { "version": "9.22.5", - "resolved": "https://registry.npmjs.org/react-virtualized/-/react-virtualized-9.22.5.tgz", - "integrity": "sha512-YqQMRzlVANBv1L/7r63OHa2b0ZsAaDp1UhVNEdUaXI8A5u6hTpA5NYtUueLH2rFuY/27mTGIBl7ZhqFKzw18YQ==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.7.2", @@ -11395,8 +9338,6 @@ }, "node_modules/react-virtualized-auto-sizer": { "version": "1.0.21", - "resolved": "https://registry.npmjs.org/react-virtualized-auto-sizer/-/react-virtualized-auto-sizer-1.0.21.tgz", - "integrity": "sha512-RedZxj452+ITLfqIrR02BjvCaXV63YVIcVrvmruDZXFpJGazg4gHNs1AShPGVLvEuLGZdZ9AtkGKhWvzEujL8g==", "license": "MIT", "peerDependencies": { "react": "^15.3.0 || ^16.0.0-alpha || ^17.0.0 || ^18.0.0", @@ -11405,8 +9346,6 @@ }, "node_modules/react-virtualized/node_modules/clsx": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", "license": "MIT", "engines": { "node": ">=6" @@ -11414,8 +9353,6 @@ }, "node_modules/react-window": { "version": "1.8.10", - "resolved": "https://registry.npmjs.org/react-window/-/react-window-1.8.10.tgz", - "integrity": "sha512-Y0Cx+dnU6NLa5/EvoHukUD0BklJ8qITCtVEPY1C/nL8wwoZ0b5aEw8Ff1dOVHw7fCzMt55XfJDd8S8W8LCaUCg==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.0.0", @@ -11431,14 +9368,10 @@ }, "node_modules/react-window/node_modules/memoize-one": { "version": "5.2.1", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", - "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "core-util-is": "~1.0.0", @@ -11452,14 +9385,10 @@ }, "node_modules/readable-stream/node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "license": "MIT" }, "node_modules/readdirp": { "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "license": "MIT", "dependencies": { "graceful-fs": "^4.1.11", @@ -11472,8 +9401,6 @@ }, "node_modules/readdirp/node_modules/define-property": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "license": "MIT", "dependencies": { "is-descriptor": "^1.0.2", @@ -11485,8 +9412,6 @@ }, "node_modules/readdirp/node_modules/extend-shallow": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", @@ -11498,8 +9423,6 @@ }, "node_modules/readdirp/node_modules/is-descriptor": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -11511,8 +9434,6 @@ }, "node_modules/readdirp/node_modules/is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" @@ -11523,8 +9444,6 @@ }, "node_modules/readdirp/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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -11532,8 +9451,6 @@ }, "node_modules/readdirp/node_modules/micromatch": { "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "license": "MIT", "dependencies": { "arr-diff": "^4.0.0", @@ -11556,14 +9473,10 @@ }, "node_modules/recordrtc": { "version": "5.6.2", - "resolved": "https://registry.npmjs.org/recordrtc/-/recordrtc-5.6.2.tgz", - "integrity": "sha512-1QNKKNtl7+KcwD1lyOgP3ZlbiJ1d0HtXnypUy7yq49xEERxk31PHvE9RCciDrulPCY7WJ+oz0R9hpNxgsIurGQ==", "license": "MIT" }, "node_modules/redent": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "license": "MIT", "dependencies": { "indent-string": "^4.0.0", @@ -11575,8 +9488,6 @@ }, "node_modules/redux": { "version": "4.2.1", - "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz", - "integrity": "sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==", "license": "MIT", "dependencies": { "@babel/runtime": "^7.9.2" @@ -11584,8 +9495,6 @@ }, "node_modules/redux-saga": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/redux-saga/-/redux-saga-1.3.0.tgz", - "integrity": "sha512-J9RvCeAZXSTAibFY0kGw6Iy4EdyDNW7k6Q+liwX+bsck7QVsU78zz8vpBRweEfANxnnlG/xGGeOvf6r8UXzNJQ==", "license": "MIT", "dependencies": { "@redux-saga/core": "^1.3.0" @@ -11593,8 +9502,6 @@ }, "node_modules/redux-thunk": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-3.1.0.tgz", - "integrity": "sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==", "license": "MIT", "peerDependencies": { "redux": "^5.0.0" @@ -11602,14 +9509,11 @@ }, "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==", "license": "Apache-2.0" }, "node_modules/reflect.getprototypeof": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", - "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -11630,14 +9534,10 @@ }, "node_modules/regenerator-runtime": { "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", - "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", "license": "MIT" }, "node_modules/regex-not": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "license": "MIT", "dependencies": { "extend-shallow": "^3.0.2", @@ -11649,8 +9549,6 @@ }, "node_modules/regex-not/node_modules/extend-shallow": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", @@ -11662,8 +9560,6 @@ }, "node_modules/regex-not/node_modules/is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" @@ -11674,8 +9570,6 @@ }, "node_modules/regexp.prototype.flags": { "version": "1.5.4", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", - "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -11694,8 +9588,6 @@ }, "node_modules/regexpp": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "dev": true, "license": "MIT", "engines": { @@ -11707,14 +9599,10 @@ }, "node_modules/remove-trailing-separator": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", "license": "ISC" }, "node_modules/repeat-element": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", - "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -11722,8 +9610,6 @@ }, "node_modules/repeat-string": { "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", "license": "MIT", "engines": { "node": ">=0.10" @@ -11731,9 +9617,6 @@ }, "node_modules/request": { "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", "license": "Apache-2.0", "dependencies": { "aws-sign2": "~0.7.0", @@ -11763,8 +9646,6 @@ }, "node_modules/request/node_modules/form-data": { "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", "license": "MIT", "dependencies": { "asynckit": "^0.4.0", @@ -11777,8 +9658,6 @@ }, "node_modules/request/node_modules/qs": { "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", "license": "BSD-3-Clause", "engines": { "node": ">=0.6" @@ -11786,9 +9665,6 @@ }, "node_modules/request/node_modules/uuid": { "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", "license": "MIT", "bin": { "uuid": "bin/uuid" @@ -11796,8 +9672,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -11805,20 +9679,14 @@ }, "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==", "license": "MIT" }, "node_modules/reselect": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz", - "integrity": "sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w==", "license": "MIT" }, "node_modules/resolve": { "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "license": "MIT", "dependencies": { "is-core-module": "^2.13.0", @@ -11834,8 +9702,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">=4" @@ -11843,15 +9709,10 @@ }, "node_modules/resolve-url": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", - "deprecated": "https://github.com/lydell/resolve-url#deprecated", "license": "MIT" }, "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, "license": "MIT", "dependencies": { @@ -11864,8 +9725,6 @@ }, "node_modules/ret": { "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", "license": "MIT", "engines": { "node": ">=0.12" @@ -11873,15 +9732,10 @@ }, "node_modules/rfdc": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", - "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", "license": "MIT" }, "node_modules/rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "license": "ISC", "dependencies": { @@ -11895,64 +9749,23 @@ } }, "node_modules/rollup": { - "version": "4.41.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.41.1.tgz", - "integrity": "sha512-cPmwD3FnFv8rKMBc1MxWCwVQFxwf1JEmSX3iQXrRVVG15zerAIXRjMFVWnd5Q5QvgKF7Aj+5ykXFhUl+QGnyOw==", + "version": "3.29.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.5.tgz", + "integrity": "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w==", "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "1.0.7" - }, "bin": { "rollup": "dist/bin/rollup" }, "engines": { - "node": ">=18.0.0", + "node": ">=14.18.0", "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.41.1", - "@rollup/rollup-android-arm64": "4.41.1", - "@rollup/rollup-darwin-arm64": "4.41.1", - "@rollup/rollup-darwin-x64": "4.41.1", - "@rollup/rollup-freebsd-arm64": "4.41.1", - "@rollup/rollup-freebsd-x64": "4.41.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.41.1", - "@rollup/rollup-linux-arm-musleabihf": "4.41.1", - "@rollup/rollup-linux-arm64-gnu": "4.41.1", - "@rollup/rollup-linux-arm64-musl": "4.41.1", - "@rollup/rollup-linux-loongarch64-gnu": "4.41.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.41.1", - "@rollup/rollup-linux-riscv64-gnu": "4.41.1", - "@rollup/rollup-linux-riscv64-musl": "4.41.1", - "@rollup/rollup-linux-s390x-gnu": "4.41.1", - "@rollup/rollup-linux-x64-gnu": "4.41.1", - "@rollup/rollup-linux-x64-musl": "4.41.1", - "@rollup/rollup-win32-arm64-msvc": "4.41.1", - "@rollup/rollup-win32-ia32-msvc": "4.41.1", - "@rollup/rollup-win32-x64-msvc": "4.41.1", "fsevents": "~2.3.2" } }, - "node_modules/rollup/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, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "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==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11961,8 +9774,7 @@ }, "node_modules/safe-array-concat": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -11980,14 +9792,11 @@ }, "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==", "license": "MIT" }, "node_modules/safe-push-apply": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", - "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -12002,8 +9811,6 @@ }, "node_modules/safe-regex": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", "license": "MIT", "dependencies": { "ret": "~0.1.10" @@ -12011,8 +9818,6 @@ }, "node_modules/safe-regex-test": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", - "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -12028,14 +9833,10 @@ }, "node_modules/safer-buffer": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "license": "MIT" }, "node_modules/sass": { "version": "1.70.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.70.0.tgz", - "integrity": "sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ==", "license": "MIT", "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -12051,8 +9852,6 @@ }, "node_modules/sass/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==", "license": "ISC", "dependencies": { "normalize-path": "^3.0.0", @@ -12064,8 +9863,6 @@ }, "node_modules/sass/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==", "license": "MIT", "engines": { "node": ">=8" @@ -12073,8 +9870,6 @@ }, "node_modules/sass/node_modules/braces": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "license": "MIT", "dependencies": { "fill-range": "^7.0.1" @@ -12085,8 +9880,6 @@ }, "node_modules/sass/node_modules/chokidar": { "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "funding": [ { "type": "individual", @@ -12112,8 +9905,6 @@ }, "node_modules/sass/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==", "license": "MIT", "dependencies": { "to-regex-range": "^5.0.1" @@ -12122,24 +9913,8 @@ "node": ">=8" } }, - "node_modules/sass/node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/sass/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==", "license": "MIT", "dependencies": { "binary-extensions": "^2.0.0" @@ -12150,8 +9925,6 @@ }, "node_modules/sass/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==", "license": "MIT", "engines": { "node": ">=0.12.0" @@ -12159,8 +9932,6 @@ }, "node_modules/sass/node_modules/readdirp": { "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "license": "MIT", "dependencies": { "picomatch": "^2.2.1" @@ -12171,8 +9942,6 @@ }, "node_modules/sass/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==", "license": "MIT", "dependencies": { "is-number": "^7.0.0" @@ -12183,8 +9952,6 @@ }, "node_modules/scheduler": { "version": "0.23.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", - "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "license": "MIT", "dependencies": { "loose-envify": "^1.1.0" @@ -12192,25 +9959,17 @@ }, "node_modules/scroll": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scroll/-/scroll-3.0.1.tgz", - "integrity": "sha512-pz7y517OVls1maEzlirKO5nPYle9AXsFzTMNJrRGmT951mzpIBy7sNHOg5o/0MQd/NqliCiWnAi0kZneMPFLcg==", "license": "MIT" }, "node_modules/scrollparent": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/scrollparent/-/scrollparent-2.1.0.tgz", - "integrity": "sha512-bnnvJL28/Rtz/kz2+4wpBjHzWoEzXhVg/TE8BeVGJHUqE8THNIRnDxDWMktwM+qahvlRdvlLdsQfYe+cuqfZeA==", "license": "ISC" }, "node_modules/security-context": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/security-context/-/security-context-4.0.0.tgz", - "integrity": "sha512-yiDCS7tpKQl6p4NG57BdKLTSNLFfj5HosBIzXBl4jZf/qorJzSzbEUIdLhN+vVYgyLlvjixY8DPPTgqI8zvNCA==" + "version": "4.0.0" }, "node_modules/semver": { "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -12218,15 +9977,11 @@ }, "node_modules/semver-compare": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true, "license": "MIT" }, "node_modules/serialize-error": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-5.0.0.tgz", - "integrity": "sha512-/VtpuyzYf82mHYTtI4QKtwHa79vAdU5OQpNPAmE/0UDdlGT0ZxHwC+J6gXkw29wwoVI8fMPsfcVHOwXtUQYYQA==", "license": "MIT", "dependencies": { "type-fest": "^0.8.0" @@ -12237,8 +9992,6 @@ }, "node_modules/serialize-error/node_modules/type-fest": { "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=8" @@ -12246,8 +9999,6 @@ }, "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==", "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -12263,8 +10014,6 @@ }, "node_modules/set-function-name": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", - "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "license": "MIT", "dependencies": { "define-data-property": "^1.1.4", @@ -12278,8 +10027,7 @@ }, "node_modules/set-proto": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", - "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", @@ -12292,8 +10040,6 @@ }, "node_modules/set-value": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", "license": "MIT", "dependencies": { "extend-shallow": "^2.0.1", @@ -12307,20 +10053,14 @@ }, "node_modules/setimmediate": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "license": "MIT" }, "node_modules/setprototypeof": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "license": "ISC" }, "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, "license": "MIT", "dependencies": { @@ -12332,8 +10072,6 @@ }, "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, "license": "MIT", "engines": { @@ -12342,8 +10080,6 @@ }, "node_modules/side-channel": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", - "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -12361,8 +10097,6 @@ }, "node_modules/side-channel-list": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -12377,8 +10111,6 @@ }, "node_modules/side-channel-map": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", - "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -12395,8 +10127,6 @@ }, "node_modules/side-channel-weakmap": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", - "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -12414,15 +10144,11 @@ }, "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, "license": "ISC" }, "node_modules/slash": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "license": "MIT", "engines": { "node": ">=8" @@ -12430,8 +10156,6 @@ }, "node_modules/slice-ansi": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12445,8 +10169,6 @@ }, "node_modules/snapdragon": { "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "license": "MIT", "dependencies": { "base": "^0.11.1", @@ -12464,8 +10186,6 @@ }, "node_modules/snapdragon-node": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "license": "MIT", "dependencies": { "define-property": "^1.0.0", @@ -12478,8 +10198,6 @@ }, "node_modules/snapdragon-node/node_modules/define-property": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", "license": "MIT", "dependencies": { "is-descriptor": "^1.0.0" @@ -12490,8 +10208,6 @@ }, "node_modules/snapdragon-node/node_modules/is-descriptor": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -12503,8 +10219,6 @@ }, "node_modules/snapdragon-util": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "license": "MIT", "dependencies": { "kind-of": "^3.2.0" @@ -12515,8 +10229,6 @@ }, "node_modules/snapdragon/node_modules/debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -12524,14 +10236,10 @@ }, "node_modules/snapdragon/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, "node_modules/socket.io": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", - "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", "license": "MIT", "dependencies": { "debug": "~3.1.0", @@ -12544,14 +10252,10 @@ }, "node_modules/socket.io-adapter": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", "license": "MIT" }, "node_modules/socket.io-client": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", - "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", "license": "MIT", "dependencies": { "backo2": "1.0.2", @@ -12572,14 +10276,10 @@ }, "node_modules/socket.io-client/node_modules/component-emitter": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==", "license": "MIT" }, "node_modules/socket.io-client/node_modules/debug": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -12587,14 +10287,10 @@ }, "node_modules/socket.io-client/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, "node_modules/socket.io-parser": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", - "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", "license": "MIT", "dependencies": { "component-emitter": "1.2.1", @@ -12604,14 +10300,10 @@ }, "node_modules/socket.io-parser/node_modules/component-emitter": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==", "license": "MIT" }, "node_modules/socket.io-parser/node_modules/debug": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -12619,20 +10311,14 @@ }, "node_modules/socket.io-parser/node_modules/isarray": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", "license": "MIT" }, "node_modules/socket.io-parser/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, "node_modules/socket.io/node_modules/debug": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "license": "MIT", "dependencies": { "ms": "2.0.0" @@ -12640,14 +10326,10 @@ }, "node_modules/socket.io/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT" }, "node_modules/sodium-native": { "version": "3.4.1", - "resolved": "https://registry.npmjs.org/sodium-native/-/sodium-native-3.4.1.tgz", - "integrity": "sha512-PaNN/roiFWzVVTL6OqjzYct38NSXewdl2wz8SRB51Br/MLIJPrbM3XexhVWkq7D3UWMysfrhKVf1v1phZq6MeQ==", "hasInstallScript": true, "license": "MIT", "optional": true, @@ -12657,8 +10339,6 @@ }, "node_modules/source-map": { "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -12666,8 +10346,6 @@ }, "node_modules/source-map-js": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -12675,9 +10353,6 @@ }, "node_modules/source-map-resolve": { "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", "license": "MIT", "dependencies": { "atob": "^2.1.2", @@ -12689,21 +10364,14 @@ }, "node_modules/source-map-url": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "deprecated": "See https://github.com/lydell/source-map-url#deprecated", "license": "MIT" }, "node_modules/split-graphemes": { "version": "0.5.0", - "resolved": "https://registry.npmjs.org/split-graphemes/-/split-graphemes-0.5.0.tgz", - "integrity": "sha512-TTZ4IPmxuGZOPqhKLHscOeVf568gDP8JE8FxaZU/k30Q3Ra1BRhMv8d9jq1R6A/6T8wSz6ozYn3aJ5skgP6omA==", "license": "MIT" }, "node_modules/split-string": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "license": "MIT", "dependencies": { "extend-shallow": "^3.0.0" @@ -12714,8 +10382,6 @@ }, "node_modules/split-string/node_modules/extend-shallow": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", @@ -12727,8 +10393,6 @@ }, "node_modules/split-string/node_modules/is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" @@ -12739,15 +10403,11 @@ }, "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, "license": "BSD-3-Clause" }, "node_modules/sshpk": { "version": "1.18.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", - "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", "license": "MIT", "dependencies": { "asn1": "~0.2.3", @@ -12771,8 +10431,6 @@ }, "node_modules/stack-utils": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "license": "MIT", "dependencies": { "escape-string-regexp": "^2.0.0" @@ -12783,8 +10441,6 @@ }, "node_modules/stack-utils/node_modules/escape-string-regexp": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "license": "MIT", "engines": { "node": ">=8" @@ -12792,8 +10448,6 @@ }, "node_modules/static-extend": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", "license": "MIT", "dependencies": { "define-property": "^0.2.5", @@ -12805,8 +10459,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.6" @@ -12814,8 +10466,6 @@ }, "node_modules/stop-iteration-iterator": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", - "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -12827,9 +10477,6 @@ }, "node_modules/streamroller": { "version": "0.7.0", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-0.7.0.tgz", - "integrity": "sha512-WREzfy0r0zUqp3lGO096wRuUp7ho1X6uo/7DJfTlEi0Iv/4gT7YHqXDjKC2ioVGBZtE8QzsQD9nx1nIuoZ57jQ==", - "deprecated": "0.x is no longer supported. Please upgrade to 3.x or higher.", "license": "MIT", "dependencies": { "date-format": "^1.2.0", @@ -12843,8 +10490,6 @@ }, "node_modules/streamroller/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "license": "MIT", "dependencies": { "ms": "^2.1.1" @@ -12852,8 +10497,6 @@ }, "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==", "license": "MIT", "dependencies": { "safe-buffer": "~5.1.0" @@ -12861,8 +10504,6 @@ }, "node_modules/string-argv": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", "dev": true, "license": "MIT", "engines": { @@ -12871,8 +10512,6 @@ }, "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, "license": "MIT", "dependencies": { @@ -12886,15 +10525,25 @@ }, "node_modules/string-width/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, "license": "MIT" }, + "node_modules/string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/string.prototype.matchall": { "version": "4.0.12", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz", - "integrity": "sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==", "dev": true, "license": "MIT", "dependencies": { @@ -12921,8 +10570,6 @@ }, "node_modules/string.prototype.repeat": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", - "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", "dev": true, "license": "MIT", "dependencies": { @@ -12932,8 +10579,7 @@ }, "node_modules/string.prototype.trim": { "version": "1.2.10", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", - "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -12953,8 +10599,7 @@ }, "node_modules/string.prototype.trimend": { "version": "1.0.9", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", - "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -12971,8 +10616,7 @@ }, "node_modules/string.prototype.trimstart": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", - "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -12988,8 +10632,6 @@ }, "node_modules/stringify-object": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", - "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -13003,8 +10645,6 @@ }, "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, "license": "MIT", "dependencies": { @@ -13016,8 +10656,7 @@ }, "node_modules/strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -13025,8 +10664,6 @@ }, "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, "license": "MIT", "engines": { @@ -13035,8 +10672,6 @@ }, "node_modules/strip-indent": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "license": "MIT", "dependencies": { "min-indent": "^1.0.0" @@ -13047,8 +10682,6 @@ }, "node_modules/strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, "license": "MIT", "engines": { @@ -13060,20 +10693,14 @@ }, "node_modules/strnum": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", - "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", "license": "MIT" }, "node_modules/stylis": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==", "license": "MIT" }, "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==", "license": "MIT", "dependencies": { "has-flag": "^4.0.0" @@ -13084,8 +10711,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">= 0.4" @@ -13096,8 +10721,6 @@ }, "node_modules/table": { "version": "6.8.1", - "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", - "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -13113,8 +10736,6 @@ }, "node_modules/table/node_modules/slice-ansi": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13131,15 +10752,11 @@ }, "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, "license": "MIT" }, "node_modules/throttle-debounce": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.3.0.tgz", - "integrity": "sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ==", "license": "MIT", "engines": { "node": ">=8" @@ -13147,52 +10764,16 @@ }, "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, "license": "MIT" }, "node_modules/tiny-warning": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==", "dev": true, "license": "MIT" }, - "node_modules/tinyglobby": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz", - "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "fdir": "^6.4.4", - "picomatch": "^4.0.2" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/SuperchupuDev" - } - }, - "node_modules/tinyglobby/node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "node_modules/tmp": { "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "license": "MIT", "dependencies": { "os-tmpdir": "~1.0.2" @@ -13202,14 +10783,10 @@ } }, "node_modules/to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A==" + "version": "0.1.4" }, "node_modules/to-object-path": { "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", "license": "MIT", "dependencies": { "kind-of": "^3.0.2" @@ -13220,8 +10797,6 @@ }, "node_modules/to-regex": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "license": "MIT", "dependencies": { "define-property": "^2.0.2", @@ -13235,8 +10810,6 @@ }, "node_modules/to-regex-range": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", "license": "MIT", "dependencies": { "is-number": "^3.0.0", @@ -13248,8 +10821,6 @@ }, "node_modules/to-regex/node_modules/define-property": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "license": "MIT", "dependencies": { "is-descriptor": "^1.0.2", @@ -13261,8 +10832,6 @@ }, "node_modules/to-regex/node_modules/extend-shallow": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", "license": "MIT", "dependencies": { "assign-symbols": "^1.0.0", @@ -13274,8 +10843,6 @@ }, "node_modules/to-regex/node_modules/is-descriptor": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz", - "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", "license": "MIT", "dependencies": { "is-accessor-descriptor": "^1.0.1", @@ -13287,8 +10854,6 @@ }, "node_modules/to-regex/node_modules/is-extendable": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "license": "MIT", "dependencies": { "is-plain-object": "^2.0.4" @@ -13299,8 +10864,6 @@ }, "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==", "license": "MIT", "engines": { "node": ">=0.6" @@ -13308,8 +10871,6 @@ }, "node_modules/tough-cookie": { "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "license": "BSD-3-Clause", "dependencies": { "psl": "^1.1.28", @@ -13321,14 +10882,10 @@ }, "node_modules/tr46": { "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", "license": "MIT" }, "node_modules/tree-changes": { "version": "0.11.3", - "resolved": "https://registry.npmjs.org/tree-changes/-/tree-changes-0.11.3.tgz", - "integrity": "sha512-r14mvDZ6tqz8PRQmlFKjhUVngu4VZ9d92ON3tp0EGpFBE6PAHOq8Bx8m8ahbNoGE3uI/npjYcJiqVydyOiYXag==", "license": "MIT", "dependencies": { "@gilbarbara/deep-equal": "^0.3.1", @@ -13337,8 +10894,6 @@ }, "node_modules/ts-node": { "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", "license": "MIT", "dependencies": { "@cspotcode/source-map-support": "^0.8.0", @@ -13380,8 +10935,6 @@ }, "node_modules/ts-node/node_modules/acorn": { "version": "8.13.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", - "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -13392,8 +10945,7 @@ }, "node_modules/tsconfig-paths": { "version": "3.15.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", - "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", + "dev": true, "license": "MIT", "dependencies": { "@types/json5": "^0.0.29", @@ -13404,8 +10956,7 @@ }, "node_modules/tsconfig-paths/node_modules/json5": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, "license": "MIT", "dependencies": { "minimist": "^1.2.0" @@ -13416,8 +10967,7 @@ }, "node_modules/tsconfig-paths/node_modules/minimist": { "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -13425,14 +10975,10 @@ }, "node_modules/tslib": { "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz", - "integrity": "sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==", "license": "0BSD" }, "node_modules/tunnel-agent": { "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "license": "Apache-2.0", "dependencies": { "safe-buffer": "^5.0.1" @@ -13443,20 +10989,14 @@ }, "node_modules/tween-functions": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/tween-functions/-/tween-functions-1.2.0.tgz", - "integrity": "sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==", "license": "BSD" }, "node_modules/tweetnacl": { "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "license": "Unlicense" }, "node_modules/type-check": { "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "license": "MIT", "dependencies": { @@ -13468,8 +11008,6 @@ }, "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, "license": "(MIT OR CC0-1.0)", "engines": { @@ -13481,8 +11019,6 @@ }, "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==", "license": "MIT", "dependencies": { "media-typer": "0.3.0", @@ -13494,8 +11030,7 @@ }, "node_modules/typed-array-buffer": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", - "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -13508,8 +11043,7 @@ }, "node_modules/typed-array-byte-length": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", - "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.8", @@ -13527,8 +11061,7 @@ }, "node_modules/typed-array-byte-offset": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", - "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", @@ -13548,8 +11081,7 @@ }, "node_modules/typed-array-length": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", - "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, "license": "MIT", "dependencies": { "call-bind": "^1.0.7", @@ -13568,8 +11100,6 @@ }, "node_modules/typescript": { "version": "5.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", - "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -13581,8 +11111,6 @@ }, "node_modules/typescript-compare": { "version": "0.0.2", - "resolved": "https://registry.npmjs.org/typescript-compare/-/typescript-compare-0.0.2.tgz", - "integrity": "sha512-8ja4j7pMHkfLJQO2/8tut7ub+J3Lw2S3061eJLFQcvs3tsmJKp8KG5NtpLn7KcY2w08edF74BSVN7qJS0U6oHA==", "license": "MIT", "dependencies": { "typescript-logic": "^0.0.0" @@ -13590,14 +11118,10 @@ }, "node_modules/typescript-logic": { "version": "0.0.0", - "resolved": "https://registry.npmjs.org/typescript-logic/-/typescript-logic-0.0.0.tgz", - "integrity": "sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q==", "license": "MIT" }, "node_modules/typescript-tuple": { "version": "2.2.1", - "resolved": "https://registry.npmjs.org/typescript-tuple/-/typescript-tuple-2.2.1.tgz", - "integrity": "sha512-Zcr0lbt8z5ZdEzERHAMAniTiIKerFCMgd7yjq1fPnDJ43et/k9twIFQMUYff9k5oXcsQ0WpvFcgzK2ZKASoW6Q==", "license": "MIT", "dependencies": { "typescript-compare": "^0.0.2" @@ -13605,14 +11129,11 @@ }, "node_modules/ultron": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", "license": "MIT" }, "node_modules/unbox-primitive": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", - "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.3", @@ -13629,8 +11150,6 @@ }, "node_modules/union-value": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", "license": "MIT", "dependencies": { "arr-union": "^3.1.0", @@ -13644,8 +11163,6 @@ }, "node_modules/unpipe": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "license": "MIT", "engines": { "node": ">= 0.8" @@ -13653,8 +11170,6 @@ }, "node_modules/unset-value": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", "license": "MIT", "dependencies": { "has-value": "^0.3.1", @@ -13666,8 +11181,6 @@ }, "node_modules/unset-value/node_modules/has-value": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", "license": "MIT", "dependencies": { "get-value": "^2.0.3", @@ -13680,8 +11193,6 @@ }, "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", "license": "MIT", "dependencies": { "isarray": "1.0.0" @@ -13692,8 +11203,6 @@ }, "node_modules/unset-value/node_modules/has-values": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -13701,14 +11210,10 @@ }, "node_modules/unset-value/node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "license": "MIT" }, "node_modules/upath": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", "license": "MIT", "engines": { "node": ">=4", @@ -13717,8 +11222,6 @@ }, "node_modules/update-browserslist-db": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", - "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "dev": true, "funding": [ { @@ -13748,8 +11251,6 @@ }, "node_modules/uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" @@ -13757,15 +11258,10 @@ }, "node_modules/urix": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", - "deprecated": "Please see https://github.com/lydell/urix#deprecated", "license": "MIT" }, "node_modules/use": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -13773,8 +11269,6 @@ }, "node_modules/use-sound": { "version": "4.0.3", - "resolved": "https://registry.npmjs.org/use-sound/-/use-sound-4.0.3.tgz", - "integrity": "sha512-L205pEUFIrLsGYsCUKHQVCt0ajs//YQOFbEQeNwaWaqQj3y3st4SuR+rvpMHLmv8hgTcfUFlvMQawZNI3OE18w==", "license": "MIT", "dependencies": { "howler": "^2.1.3" @@ -13785,8 +11279,6 @@ }, "node_modules/use-sync-external-store": { "version": "1.2.2", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", - "integrity": "sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==", "license": "MIT", "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0" @@ -13794,8 +11286,6 @@ }, "node_modules/useragent": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", - "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", "license": "MIT", "dependencies": { "lru-cache": "4.1.x", @@ -13804,8 +11294,6 @@ }, "node_modules/useragent/node_modules/lru-cache": { "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "license": "ISC", "dependencies": { "pseudomap": "^1.0.2", @@ -13814,20 +11302,14 @@ }, "node_modules/useragent/node_modules/yallist": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", "license": "ISC" }, "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==", "license": "MIT" }, "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==", "license": "MIT", "engines": { "node": ">= 0.4.0" @@ -13835,8 +11317,6 @@ }, "node_modules/uuid": { "version": "9.0.1", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", - "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" @@ -13848,21 +11328,15 @@ }, "node_modules/v8-compile-cache": { "version": "2.4.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", - "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", "dev": true, "license": "MIT" }, "node_modules/v8-compile-cache-lib": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", "license": "MIT" }, "node_modules/verror": { "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "engines": [ "node >=0.6.0" ], @@ -13875,56 +11349,43 @@ }, "node_modules/verror/node_modules/core-util-is": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "license": "MIT" }, "node_modules/vite": { - "version": "6.3.5", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.3.5.tgz", - "integrity": "sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==", + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.2.tgz", + "integrity": "sha512-tBCZBNSBbHQkaGyhGCDUGqeo2ph8Fstyp6FMSvTtsXeZSPpSMGlviAOav2hxVTqFcx8Hj/twtWKsMJXNY0xI8w==", "dev": true, - "license": "MIT", "dependencies": { - "esbuild": "^0.25.0", - "fdir": "^6.4.4", - "picomatch": "^4.0.2", - "postcss": "^8.5.3", - "rollup": "^4.34.9", - "tinyglobby": "^0.2.13" + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" }, "bin": { "vite": "bin/vite.js" }, "engines": { - "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + "node": "^14.18.0 || >=16.0.0" }, "funding": { "url": "https://github.com/vitejs/vite?sponsor=1" }, "optionalDependencies": { - "fsevents": "~2.3.3" + "fsevents": "~2.3.2" }, "peerDependencies": { - "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", - "jiti": ">=1.21.0", + "@types/node": ">= 14", "less": "*", "lightningcss": "^1.21.0", "sass": "*", - "sass-embedded": "*", "stylus": "*", "sugarss": "*", - "terser": "^5.16.0", - "tsx": "^4.8.1", - "yaml": "^2.4.2" + "terser": "^5.4.0" }, "peerDependenciesMeta": { "@types/node": { "optional": true }, - "jiti": { - "optional": true - }, "less": { "optional": true }, @@ -13934,9 +11395,6 @@ "sass": { "optional": true }, - "sass-embedded": { - "optional": true - }, "stylus": { "optional": true }, @@ -13945,56 +11403,18 @@ }, "terser": { "optional": true - }, - "tsx": { - "optional": true - }, - "yaml": { - "optional": true } } }, "node_modules/vite-plugin-wasm": { "version": "3.4.1", - "resolved": "https://registry.npmjs.org/vite-plugin-wasm/-/vite-plugin-wasm-3.4.1.tgz", - "integrity": "sha512-ja3nSo2UCkVeitltJGkS3pfQHAanHv/DqGatdI39ja6McgABlpsZ5hVgl6wuR8Qx5etY3T5qgDQhOWzc5RReZA==", "license": "MIT", "peerDependencies": { "vite": "^2 || ^3 || ^4 || ^5 || ^6" } }, - "node_modules/vite/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, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/vite/node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, "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==", "license": "MIT", "engines": { "node": ">=0.10.0" @@ -14002,36 +11422,31 @@ }, "node_modules/web-vitals": { "version": "2.1.4", - "resolved": "https://registry.npmjs.org/web-vitals/-/web-vitals-2.1.4.tgz", - "integrity": "sha512-sVWcwhU5mX6crfI5Vd2dC4qchyTqxV8URinzt25XqVh+bHEPGH4C3NPrNionCP7Obx59wrYEbNlw4Z8sjALzZg==", "license": "Apache-2.0" }, "node_modules/webidl-conversions": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", "license": "BSD-2-Clause" }, "node_modules/whatwg-fetch": { "version": "3.6.20", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", - "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==", "license": "MIT" }, "node_modules/whatwg-url": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "license": "MIT", "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" } }, + "node_modules/when": { + "version": "3.7.8", + "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", + "integrity": "sha512-5cZ7mecD3eYcMiCH4wtRPA5iFJZ50BJYDfckI5RRpQiktMiYTcn0ccLTZOvcbBume+1304fQztxeNzNS9Gvrnw==" + }, "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, "license": "ISC", "dependencies": { @@ -14046,8 +11461,6 @@ }, "node_modules/which-boxed-primitive": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", - "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", "license": "MIT", "dependencies": { "is-bigint": "^1.1.0", @@ -14065,8 +11478,7 @@ }, "node_modules/which-builtin-type": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", - "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -14092,8 +11504,6 @@ }, "node_modules/which-collection": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", - "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "license": "MIT", "dependencies": { "is-map": "^2.0.3", @@ -14110,8 +11520,6 @@ }, "node_modules/which-typed-array": { "version": "1.1.19", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", - "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "license": "MIT", "dependencies": { "available-typed-arrays": "^1.0.7", @@ -14131,8 +11539,6 @@ }, "node_modules/wordwrap": { "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==", "license": "MIT", "engines": { "node": ">=0.4.0" @@ -14140,8 +11546,6 @@ }, "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, "license": "MIT", "dependencies": { @@ -14158,14 +11562,10 @@ }, "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==", "license": "ISC" }, "node_modules/ws": { "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", "license": "MIT", "dependencies": { "async-limiter": "~1.0.0", @@ -14175,31 +11575,22 @@ }, "node_modules/xmldom": { "version": "0.1.19", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.19.tgz", - "integrity": "sha512-pDyxjQSFQgNHkU+yjvoF+GXVGJU7e9EnOg/KcGMDihBIKjTsOeDYaECwC/O9bsUWKY+Sd9izfE43JXC46EOHKA==", - "deprecated": "Deprecated due to CVE-2021-21366 resolved in 0.5.0", "engines": { "node": ">=0.1" } }, "node_modules/xmlhttprequest-ssl": { "version": "1.5.5", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", - "integrity": "sha512-/bFPLUgJrfGUL10AIv4Y7/CUt6so9CLtB/oFxQSHseSDNNCdC6vwwKEqwLN6wNPBg9YWXAiMu8jkf6RPRS/75Q==", "engines": { "node": ">=0.4.0" } }, "node_modules/yallist": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "license": "ISC" }, "node_modules/yaml": { "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "license": "ISC", "engines": { "node": ">= 6" @@ -14207,18 +11598,7402 @@ }, "node_modules/yeast": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==", "license": "MIT" }, "node_modules/yn": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", "license": "MIT", "engines": { "node": ">=6" } } + }, + "dependencies": { + "@aashutoshrathi/word-wrap": { + "version": "1.2.6", + "dev": true + }, + "@adobe/css-tools": { + "version": "4.2.0" + }, + "@ampproject/remapping": { + "version": "2.2.1", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@aws-crypto/crc32": { + "version": "5.2.0", + "requires": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + } + }, + "@aws-crypto/crc32c": { + "version": "5.2.0", + "requires": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + } + }, + "@aws-crypto/sha1-browser": { + "version": "5.2.0", + "requires": { + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + }, + "dependencies": { + "@smithy/is-array-buffer": { + "version": "2.2.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-buffer-from": { + "version": "2.2.0", + "requires": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-utf8": { + "version": "2.3.0", + "requires": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + } + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "5.2.0", + "requires": { + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + }, + "dependencies": { + "@smithy/is-array-buffer": { + "version": "2.2.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-buffer-from": { + "version": "2.2.0", + "requires": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-utf8": { + "version": "2.3.0", + "requires": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + } + } + } + }, + "@aws-crypto/sha256-js": { + "version": "5.2.0", + "requires": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@aws-crypto/util": { + "version": "5.2.0", + "requires": { + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + }, + "dependencies": { + "@smithy/is-array-buffer": { + "version": "2.2.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-buffer-from": { + "version": "2.2.0", + "requires": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-utf8": { + "version": "2.3.0", + "requires": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + } + } + } + }, + "@aws-sdk/client-s3": { + "version": "3.674.0", + "requires": { + "@aws-crypto/sha1-browser": "5.2.0", + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.670.0", + "@aws-sdk/client-sts": "3.670.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-node": "3.670.0", + "@aws-sdk/middleware-bucket-endpoint": "3.667.0", + "@aws-sdk/middleware-expect-continue": "3.667.0", + "@aws-sdk/middleware-flexible-checksums": "3.669.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-location-constraint": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-sdk-s3": "3.674.0", + "@aws-sdk/middleware-ssec": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/signature-v4-multi-region": "3.674.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", + "@aws-sdk/xml-builder": "3.662.0", + "@smithy/config-resolver": "^3.0.9", + "@smithy/core": "^2.4.8", + "@smithy/eventstream-serde-browser": "^3.0.10", + "@smithy/eventstream-serde-config-resolver": "^3.0.7", + "@smithy/eventstream-serde-node": "^3.0.9", + "@smithy/fetch-http-handler": "^3.2.9", + "@smithy/hash-blob-browser": "^3.1.6", + "@smithy/hash-node": "^3.0.7", + "@smithy/hash-stream-node": "^3.1.6", + "@smithy/invalid-dependency": "^3.0.7", + "@smithy/md5-js": "^3.0.7", + "@smithy/middleware-content-length": "^3.0.9", + "@smithy/middleware-endpoint": "^3.1.4", + "@smithy/middleware-retry": "^3.0.23", + "@smithy/middleware-serde": "^3.0.7", + "@smithy/middleware-stack": "^3.0.7", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/node-http-handler": "^3.2.4", + "@smithy/protocol-http": "^4.1.4", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/url-parser": "^3.0.7", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", + "@smithy/util-endpoints": "^2.1.3", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-retry": "^3.0.7", + "@smithy/util-stream": "^3.1.9", + "@smithy/util-utf8": "^3.0.0", + "@smithy/util-waiter": "^3.1.6", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/client-sso": { + "version": "3.670.0", + "requires": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", + "@smithy/config-resolver": "^3.0.9", + "@smithy/core": "^2.4.8", + "@smithy/fetch-http-handler": "^3.2.9", + "@smithy/hash-node": "^3.0.7", + "@smithy/invalid-dependency": "^3.0.7", + "@smithy/middleware-content-length": "^3.0.9", + "@smithy/middleware-endpoint": "^3.1.4", + "@smithy/middleware-retry": "^3.0.23", + "@smithy/middleware-serde": "^3.0.7", + "@smithy/middleware-stack": "^3.0.7", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/node-http-handler": "^3.2.4", + "@smithy/protocol-http": "^4.1.4", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/url-parser": "^3.0.7", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", + "@smithy/util-endpoints": "^2.1.3", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-retry": "^3.0.7", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.670.0", + "requires": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-node": "3.670.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", + "@smithy/config-resolver": "^3.0.9", + "@smithy/core": "^2.4.8", + "@smithy/fetch-http-handler": "^3.2.9", + "@smithy/hash-node": "^3.0.7", + "@smithy/invalid-dependency": "^3.0.7", + "@smithy/middleware-content-length": "^3.0.9", + "@smithy/middleware-endpoint": "^3.1.4", + "@smithy/middleware-retry": "^3.0.23", + "@smithy/middleware-serde": "^3.0.7", + "@smithy/middleware-stack": "^3.0.7", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/node-http-handler": "^3.2.4", + "@smithy/protocol-http": "^4.1.4", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/url-parser": "^3.0.7", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", + "@smithy/util-endpoints": "^2.1.3", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-retry": "^3.0.7", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/client-sts": { + "version": "3.670.0", + "requires": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.670.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-node": "3.670.0", + "@aws-sdk/middleware-host-header": "3.667.0", + "@aws-sdk/middleware-logger": "3.667.0", + "@aws-sdk/middleware-recursion-detection": "3.667.0", + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/region-config-resolver": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@aws-sdk/util-user-agent-browser": "3.670.0", + "@aws-sdk/util-user-agent-node": "3.669.0", + "@smithy/config-resolver": "^3.0.9", + "@smithy/core": "^2.4.8", + "@smithy/fetch-http-handler": "^3.2.9", + "@smithy/hash-node": "^3.0.7", + "@smithy/invalid-dependency": "^3.0.7", + "@smithy/middleware-content-length": "^3.0.9", + "@smithy/middleware-endpoint": "^3.1.4", + "@smithy/middleware-retry": "^3.0.23", + "@smithy/middleware-serde": "^3.0.7", + "@smithy/middleware-stack": "^3.0.7", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/node-http-handler": "^3.2.4", + "@smithy/protocol-http": "^4.1.4", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/url-parser": "^3.0.7", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.23", + "@smithy/util-defaults-mode-node": "^3.0.23", + "@smithy/util-endpoints": "^2.1.3", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-retry": "^3.0.7", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/core": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/core": "^2.4.8", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/property-provider": "^3.1.7", + "@smithy/protocol-http": "^4.1.4", + "@smithy/signature-v4": "^4.2.0", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/util-middleware": "^3.0.7", + "fast-xml-parser": "4.4.1", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.667.0", + "requires": { + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/property-provider": "^3.1.7", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/credential-provider-http": { + "version": "3.667.0", + "requires": { + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/fetch-http-handler": "^3.2.9", + "@smithy/node-http-handler": "^3.2.4", + "@smithy/property-provider": "^3.1.7", + "@smithy/protocol-http": "^4.1.4", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/util-stream": "^3.1.9", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.670.0", + "requires": { + "@aws-sdk/core": "3.667.0", + "@aws-sdk/credential-provider-env": "3.667.0", + "@aws-sdk/credential-provider-http": "3.667.0", + "@aws-sdk/credential-provider-process": "3.667.0", + "@aws-sdk/credential-provider-sso": "3.670.0", + "@aws-sdk/credential-provider-web-identity": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/credential-provider-imds": "^3.2.4", + "@smithy/property-provider": "^3.1.7", + "@smithy/shared-ini-file-loader": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.670.0", + "requires": { + "@aws-sdk/credential-provider-env": "3.667.0", + "@aws-sdk/credential-provider-http": "3.667.0", + "@aws-sdk/credential-provider-ini": "3.670.0", + "@aws-sdk/credential-provider-process": "3.667.0", + "@aws-sdk/credential-provider-sso": "3.670.0", + "@aws-sdk/credential-provider-web-identity": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/credential-provider-imds": "^3.2.4", + "@smithy/property-provider": "^3.1.7", + "@smithy/shared-ini-file-loader": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.667.0", + "requires": { + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/property-provider": "^3.1.7", + "@smithy/shared-ini-file-loader": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.670.0", + "requires": { + "@aws-sdk/client-sso": "3.670.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/token-providers": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/property-provider": "^3.1.7", + "@smithy/shared-ini-file-loader": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.667.0", + "requires": { + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/property-provider": "^3.1.7", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-bucket-endpoint": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-arn-parser": "3.568.0", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "@smithy/util-config-provider": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-expect-continue": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-flexible-checksums": { + "version": "3.669.0", + "requires": { + "@aws-crypto/crc32": "5.2.0", + "@aws-crypto/crc32c": "5.2.0", + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-location-constraint": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-sdk-s3": { + "version": "3.674.0", + "requires": { + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-arn-parser": "3.568.0", + "@smithy/core": "^2.4.8", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/protocol-http": "^4.1.4", + "@smithy/signature-v4": "^4.2.0", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-stream": "^3.1.9", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-ssec": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.669.0", + "requires": { + "@aws-sdk/core": "3.667.0", + "@aws-sdk/types": "3.667.0", + "@aws-sdk/util-endpoints": "3.667.0", + "@smithy/core": "^2.4.8", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/region-config-resolver": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/types": "^3.5.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.7", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/signature-v4-multi-region": { + "version": "3.674.0", + "requires": { + "@aws-sdk/middleware-sdk-s3": "3.674.0", + "@aws-sdk/types": "3.667.0", + "@smithy/protocol-http": "^4.1.4", + "@smithy/signature-v4": "^4.2.0", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/token-providers": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/property-provider": "^3.1.7", + "@smithy/shared-ini-file-loader": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/types": { + "version": "3.667.0", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/util-arn-parser": { + "version": "3.568.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.667.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/types": "^3.5.0", + "@smithy/util-endpoints": "^2.1.3", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/util-locate-window": { + "version": "3.568.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.670.0", + "requires": { + "@aws-sdk/types": "3.667.0", + "@smithy/types": "^3.5.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.669.0", + "requires": { + "@aws-sdk/middleware-user-agent": "3.669.0", + "@aws-sdk/types": "3.667.0", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@aws-sdk/xml-builder": { + "version": "3.662.0", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@babel/code-frame": { + "version": "7.27.1", + "requires": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + } + }, + "@babel/compat-data": { + "version": "7.27.3", + "dev": true + }, + "@babel/core": { + "version": "7.27.4", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.4", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.27.4", + "@babel/types": "^7.27.3", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "dependencies": { + "convert-source-map": { + "version": "2.0.0", + "dev": true + } + } + }, + "@babel/eslint-parser": { + "version": "7.27.1", + "dev": true, + "requires": { + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", + "eslint-visitor-keys": "^2.1.0", + "semver": "^6.3.1" + } + }, + "@babel/generator": { + "version": "7.27.3", + "requires": { + "@babel/parser": "^7.27.3", + "@babel/types": "^7.27.3", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "dev": true, + "requires": { + "@babel/types": "^7.27.3" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.27.2", + "dev": true, + "requires": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + } + }, + "@babel/helper-module-imports": { + "version": "7.27.1", + "requires": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + } + }, + "@babel/helper-module-transforms": { + "version": "7.27.3", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.3" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.27.1", + "dev": true + }, + "@babel/helper-string-parser": { + "version": "7.27.1" + }, + "@babel/helper-validator-identifier": { + "version": "7.27.1" + }, + "@babel/helper-validator-option": { + "version": "7.27.1", + "dev": true + }, + "@babel/helpers": { + "version": "7.27.4", + "dev": true, + "requires": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.3" + } + }, + "@babel/highlight": { + "version": "7.25.7", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.25.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.27.4", + "requires": { + "@babel/types": "^7.27.3" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/plugin-transform-react-display-name": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-syntax-jsx": "^7.27.1", + "@babel/types": "^7.27.1" + } + }, + "@babel/plugin-transform-react-jsx-development": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/plugin-transform-react-jsx": "^7.27.1" + } + }, + "@babel/plugin-transform-react-jsx-self": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/plugin-transform-react-jsx-source": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/plugin-transform-react-pure-annotations": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1" + } + }, + "@babel/preset-react": { + "version": "7.27.1", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-validator-option": "^7.27.1", + "@babel/plugin-transform-react-display-name": "^7.27.1", + "@babel/plugin-transform-react-jsx": "^7.27.1", + "@babel/plugin-transform-react-jsx-development": "^7.27.1", + "@babel/plugin-transform-react-pure-annotations": "^7.27.1" + } + }, + "@babel/runtime": { + "version": "7.23.9", + "requires": { + "regenerator-runtime": "^0.14.0" + } + }, + "@babel/template": { + "version": "7.27.2", + "requires": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + } + }, + "@babel/traverse": { + "version": "7.27.4", + "requires": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.3", + "debug": "^4.3.1", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.27.3", + "requires": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + } + }, + "@cspotcode/source-map-support": { + "version": "0.8.1", + "requires": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "dependencies": { + "@jridgewell/trace-mapping": { + "version": "0.3.9", + "requires": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + } + } + }, + "@digitalbazaar/http-client": { + "version": "1.2.0", + "requires": { + "esm": "^3.2.22", + "ky": "^0.25.1", + "ky-universal": "^0.8.2" + } + }, + "@emotion/babel-plugin": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", + "requires": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/serialize": "^1.3.3", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "@emotion/cache": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", + "requires": { + "@emotion/memoize": "^0.9.0", + "@emotion/sheet": "^1.4.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "stylis": "4.2.0" + } + }, + "@emotion/hash": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", + "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==" + }, + "@emotion/is-prop-valid": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz", + "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==", + "requires": { + "@emotion/memoize": "^0.9.0" + } + }, + "@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" + }, + "@emotion/react": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", + "requires": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "hoist-non-react-statics": "^3.3.1" + } + }, + "@emotion/serialize": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", + "requires": { + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/unitless": "^0.10.0", + "@emotion/utils": "^1.4.2", + "csstype": "^3.0.2" + } + }, + "@emotion/sheet": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", + "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==" + }, + "@emotion/styled": { + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.0.tgz", + "integrity": "sha512-XxfOnXFffatap2IyCeJyNov3kiDQWoR08gPUQxvbL7fxKryGBKUZUkG6Hz48DZwVrJSVh9sJboyV1Ds4OW6SgA==", + "requires": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/is-prop-valid": "^1.3.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2" + } + }, + "@emotion/unitless": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", + "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==" + }, + "@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==" + }, + "@emotion/utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==" + }, + "@emotion/weak-memoize": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", + "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==" + }, + "@esbuild/android-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "dev": true, + "optional": true + }, + "@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "dev": true, + "optional": true + }, + "@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "dev": true, + "optional": true + }, + "@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "dev": true, + "optional": true + }, + "@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "dev": true, + "optional": true + }, + "@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "dev": true, + "optional": true + }, + "@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "dev": true, + "optional": true + }, + "@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "dev": true, + "optional": true + }, + "@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "dev": true, + "optional": true + }, + "@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "dev": true, + "optional": true + }, + "@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "dev": true, + "optional": true + }, + "@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "dev": true, + "optional": true + }, + "@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "dev": true, + "optional": true + }, + "@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "dev": true, + "optional": true + }, + "@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "dev": true, + "optional": true + }, + "@eslint/eslintrc": { + "version": "0.4.3", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "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" + } + }, + "globals": { + "version": "13.24.0", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "dev": true + }, + "type-fest": { + "version": "0.20.2", + "dev": true + } + } + }, + "@ffmpeg/ffmpeg": { + "version": "0.9.8", + "resolved": "https://registry.npmjs.org/@ffmpeg/ffmpeg/-/ffmpeg-0.9.8.tgz", + "integrity": "sha512-QradleJx78hHJBtI1wRsus1L1jxQB3v4h6k8c3CERI9fssm+NSSppuofmsOei7uq7iQEYq3oK9tJNAyEsRoNng==", + "requires": { + "is-url": "^1.2.4", + "node-fetch": "^2.6.1", + "regenerator-runtime": "^0.13.7", + "resolve-url": "^0.2.1" + }, + "dependencies": { + "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==" + } + } + }, + "@fingerprintjs/fingerprintjs": { + "version": "4.2.2", + "requires": { + "tslib": "^2.4.1" + } + }, + "@floating-ui/core": { + "version": "1.6.0", + "requires": { + "@floating-ui/utils": "^0.2.1" + } + }, + "@floating-ui/dom": { + "version": "1.6.1", + "requires": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.1" + } + }, + "@floating-ui/react-dom": { + "version": "2.0.8", + "requires": { + "@floating-ui/dom": "^1.6.1" + } + }, + "@floating-ui/utils": { + "version": "0.2.1" + }, + "@gilbarbara/deep-equal": { + "version": "0.3.1" + }, + "@humanwhocodes/config-array": { + "version": "0.5.0", + "dev": true, + "requires": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + } + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "dev": true + }, + "@jest/expect-utils": { + "version": "29.4.3", + "requires": { + "jest-get-type": "^29.4.3" + } + }, + "@jest/schemas": { + "version": "29.4.3", + "requires": { + "@sinclair/typebox": "^0.25.16" + } + }, + "@jest/types": { + "version": "29.4.3", + "requires": { + "@jest/schemas": "^29.4.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "dependencies": { + "chalk": { + "version": "4.1.2", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + } + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.5", + "requires": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.1" + }, + "@jridgewell/set-array": { + "version": "1.2.1" + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.15" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.25", + "requires": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "@mui/base": { + "version": "5.0.0-beta.34", + "requires": { + "@babel/runtime": "^7.23.9", + "@floating-ui/react-dom": "^2.0.8", + "@mui/types": "^7.2.13", + "@mui/utils": "^5.15.7", + "@popperjs/core": "^2.11.8", + "clsx": "^2.1.0", + "prop-types": "^15.8.1" + } + }, + "@mui/core-downloads-tracker": { + "version": "5.15.7" + }, + "@mui/icons-material": { + "version": "5.15.7", + "requires": { + "@babel/runtime": "^7.23.9" + } + }, + "@mui/material": { + "version": "5.15.7", + "requires": { + "@babel/runtime": "^7.23.9", + "@mui/base": "5.0.0-beta.34", + "@mui/core-downloads-tracker": "^5.15.7", + "@mui/system": "^5.15.7", + "@mui/types": "^7.2.13", + "@mui/utils": "^5.15.7", + "@types/react-transition-group": "^4.4.10", + "clsx": "^2.1.0", + "csstype": "^3.1.2", + "prop-types": "^15.8.1", + "react-is": "^18.2.0", + "react-transition-group": "^4.4.5" + } + }, + "@mui/private-theming": { + "version": "5.16.6", + "requires": { + "@babel/runtime": "^7.23.9", + "@mui/utils": "^5.16.6", + "prop-types": "^15.8.1" + } + }, + "@mui/styled-engine": { + "version": "5.15.7", + "requires": { + "@babel/runtime": "^7.23.9", + "@emotion/cache": "^11.11.0", + "csstype": "^3.1.2", + "prop-types": "^15.8.1" + } + }, + "@mui/styles": { + "version": "5.16.7", + "dev": true, + "requires": { + "@babel/runtime": "^7.23.9", + "@emotion/hash": "^0.9.1", + "@mui/private-theming": "^5.16.6", + "@mui/types": "^7.2.15", + "@mui/utils": "^5.16.6", + "clsx": "^2.1.0", + "csstype": "^3.1.3", + "hoist-non-react-statics": "^3.3.2", + "jss": "^10.10.0", + "jss-plugin-camel-case": "^10.10.0", + "jss-plugin-default-unit": "^10.10.0", + "jss-plugin-global": "^10.10.0", + "jss-plugin-nested": "^10.10.0", + "jss-plugin-props-sort": "^10.10.0", + "jss-plugin-rule-value-function": "^10.10.0", + "jss-plugin-vendor-prefixer": "^10.10.0", + "prop-types": "^15.8.1" + } + }, + "@mui/system": { + "version": "5.15.7", + "requires": { + "@babel/runtime": "^7.23.9", + "@mui/private-theming": "^5.15.7", + "@mui/styled-engine": "^5.15.7", + "@mui/types": "^7.2.13", + "@mui/utils": "^5.15.7", + "clsx": "^2.1.0", + "csstype": "^3.1.2", + "prop-types": "^15.8.1" + } + }, + "@mui/types": { + "version": "7.2.18" + }, + "@mui/utils": { + "version": "5.16.6", + "requires": { + "@babel/runtime": "^7.23.9", + "@mui/types": "^7.2.15", + "@types/prop-types": "^15.7.12", + "clsx": "^2.1.1", + "prop-types": "^15.8.1", + "react-is": "^18.3.1" + }, + "dependencies": { + "react-is": { + "version": "18.3.1" + } + } + }, + "@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "dev": true, + "requires": { + "eslint-scope": "5.1.1" + } + }, + "@popperjs/core": { + "version": "2.11.8" + }, + "@project-sunbird/client-services": { + "version": "5.1.2", + "requires": { + "@project-sunbird/telemetry-sdk": "0.0.26", + "dayjs": "^1.8.20", + "inversify": "^5.0.1", + "jsonld": "^5.2.0", + "jsonld-signatures": "^6.0.0", + "jszip": "^3.7.1", + "node-fetch": "2.6.5", + "qs": "^6.9.7", + "reflect-metadata": "^0.1.13", + "whatwg-fetch": "^3.1.0" + } + }, + "@project-sunbird/telemetry-sdk": { + "version": "0.0.26", + "requires": { + "grunt-karma": "^0.12.2", + "karma": "^3.0.0" + } + }, + "@redux-saga/core": { + "version": "1.3.0", + "requires": { + "@babel/runtime": "^7.6.3", + "@redux-saga/deferred": "^1.2.1", + "@redux-saga/delay-p": "^1.2.1", + "@redux-saga/is": "^1.1.3", + "@redux-saga/symbols": "^1.1.3", + "@redux-saga/types": "^1.2.1", + "typescript-tuple": "^2.2.1" + } + }, + "@redux-saga/deferred": { + "version": "1.2.1" + }, + "@redux-saga/delay-p": { + "version": "1.2.1", + "requires": { + "@redux-saga/symbols": "^1.1.3" + } + }, + "@redux-saga/is": { + "version": "1.1.3", + "requires": { + "@redux-saga/symbols": "^1.1.3", + "@redux-saga/types": "^1.2.1" + } + }, + "@redux-saga/symbols": { + "version": "1.1.3" + }, + "@redux-saga/types": { + "version": "1.2.1" + }, + "@reduxjs/toolkit": { + "version": "2.3.0", + "requires": { + "immer": "^10.0.3", + "redux": "^5.0.1", + "redux-thunk": "^3.1.0", + "reselect": "^5.1.0" + }, + "dependencies": { + "redux": { + "version": "5.0.1" + } + } + }, + "@remix-run/router": { + "version": "1.3.2" + }, + "@rolldown/pluginutils": { + "version": "1.0.0-beta.9", + "dev": true + }, + "@sinclair/typebox": { + "version": "0.25.24" + }, + "@smithy/abort-controller": { + "version": "3.1.5", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/chunked-blob-reader": { + "version": "3.0.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/chunked-blob-reader-native": { + "version": "3.0.0", + "requires": { + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/config-resolver": { + "version": "3.0.9", + "requires": { + "@smithy/node-config-provider": "^3.1.8", + "@smithy/types": "^3.5.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.7", + "tslib": "^2.6.2" + } + }, + "@smithy/core": { + "version": "2.4.8", + "requires": { + "@smithy/middleware-endpoint": "^3.1.4", + "@smithy/middleware-retry": "^3.0.23", + "@smithy/middleware-serde": "^3.0.7", + "@smithy/protocol-http": "^4.1.4", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/credential-provider-imds": { + "version": "3.2.4", + "requires": { + "@smithy/node-config-provider": "^3.1.8", + "@smithy/property-provider": "^3.1.7", + "@smithy/types": "^3.5.0", + "@smithy/url-parser": "^3.0.7", + "tslib": "^2.6.2" + } + }, + "@smithy/eventstream-codec": { + "version": "3.1.6", + "requires": { + "@aws-crypto/crc32": "5.2.0", + "@smithy/types": "^3.5.0", + "@smithy/util-hex-encoding": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/eventstream-serde-browser": { + "version": "3.0.10", + "requires": { + "@smithy/eventstream-serde-universal": "^3.0.9", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/eventstream-serde-config-resolver": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/eventstream-serde-node": { + "version": "3.0.9", + "requires": { + "@smithy/eventstream-serde-universal": "^3.0.9", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/eventstream-serde-universal": { + "version": "3.0.9", + "requires": { + "@smithy/eventstream-codec": "^3.1.6", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/fetch-http-handler": { + "version": "3.2.9", + "requires": { + "@smithy/protocol-http": "^4.1.4", + "@smithy/querystring-builder": "^3.0.7", + "@smithy/types": "^3.5.0", + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/hash-blob-browser": { + "version": "3.1.6", + "requires": { + "@smithy/chunked-blob-reader": "^3.0.0", + "@smithy/chunked-blob-reader-native": "^3.0.0", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/hash-node": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/hash-stream-node": { + "version": "3.1.6", + "requires": { + "@smithy/types": "^3.5.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/invalid-dependency": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/is-array-buffer": { + "version": "3.0.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/md5-js": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/middleware-content-length": { + "version": "3.0.9", + "requires": { + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/middleware-endpoint": { + "version": "3.1.4", + "requires": { + "@smithy/middleware-serde": "^3.0.7", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/shared-ini-file-loader": "^3.1.8", + "@smithy/types": "^3.5.0", + "@smithy/url-parser": "^3.0.7", + "@smithy/util-middleware": "^3.0.7", + "tslib": "^2.6.2" + } + }, + "@smithy/middleware-retry": { + "version": "3.0.23", + "requires": { + "@smithy/node-config-provider": "^3.1.8", + "@smithy/protocol-http": "^4.1.4", + "@smithy/service-error-classification": "^3.0.7", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-retry": "^3.0.7", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + } + }, + "@smithy/middleware-serde": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/middleware-stack": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/node-config-provider": { + "version": "3.1.8", + "requires": { + "@smithy/property-provider": "^3.1.7", + "@smithy/shared-ini-file-loader": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/node-http-handler": { + "version": "3.2.4", + "requires": { + "@smithy/abort-controller": "^3.1.5", + "@smithy/protocol-http": "^4.1.4", + "@smithy/querystring-builder": "^3.0.7", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/property-provider": { + "version": "3.1.7", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/protocol-http": { + "version": "4.1.4", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/querystring-builder": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "@smithy/util-uri-escape": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/querystring-parser": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/service-error-classification": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0" + } + }, + "@smithy/shared-ini-file-loader": { + "version": "3.1.8", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/signature-v4": { + "version": "4.2.0", + "requires": { + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-middleware": "^3.0.7", + "@smithy/util-uri-escape": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/smithy-client": { + "version": "3.4.0", + "requires": { + "@smithy/middleware-endpoint": "^3.1.4", + "@smithy/middleware-stack": "^3.0.7", + "@smithy/protocol-http": "^4.1.4", + "@smithy/types": "^3.5.0", + "@smithy/util-stream": "^3.1.9", + "tslib": "^2.6.2" + } + }, + "@smithy/types": { + "version": "3.5.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/url-parser": { + "version": "3.0.7", + "requires": { + "@smithy/querystring-parser": "^3.0.7", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-base64": { + "version": "3.0.0", + "requires": { + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-body-length-browser": { + "version": "3.0.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-body-length-node": { + "version": "3.0.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-buffer-from": { + "version": "3.0.0", + "requires": { + "@smithy/is-array-buffer": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-config-provider": { + "version": "3.0.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-defaults-mode-browser": { + "version": "3.0.23", + "requires": { + "@smithy/property-provider": "^3.1.7", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-defaults-mode-node": { + "version": "3.0.23", + "requires": { + "@smithy/config-resolver": "^3.0.9", + "@smithy/credential-provider-imds": "^3.2.4", + "@smithy/node-config-provider": "^3.1.8", + "@smithy/property-provider": "^3.1.7", + "@smithy/smithy-client": "^3.4.0", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-endpoints": { + "version": "2.1.3", + "requires": { + "@smithy/node-config-provider": "^3.1.8", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-hex-encoding": { + "version": "3.0.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-middleware": { + "version": "3.0.7", + "requires": { + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-retry": { + "version": "3.0.7", + "requires": { + "@smithy/service-error-classification": "^3.0.7", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-stream": { + "version": "3.1.9", + "requires": { + "@smithy/fetch-http-handler": "^3.2.9", + "@smithy/node-http-handler": "^3.2.4", + "@smithy/types": "^3.5.0", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-uri-escape": { + "version": "3.0.0", + "requires": { + "tslib": "^2.6.2" + } + }, + "@smithy/util-utf8": { + "version": "3.0.0", + "requires": { + "@smithy/util-buffer-from": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "@smithy/util-waiter": { + "version": "3.1.6", + "requires": { + "@smithy/abort-controller": "^3.1.5", + "@smithy/types": "^3.5.0", + "tslib": "^2.6.2" + } + }, + "@swc/core": { + "version": "1.11.29", + "dev": true, + "requires": { + "@swc/core-darwin-arm64": "1.11.29", + "@swc/core-darwin-x64": "1.11.29", + "@swc/core-linux-arm-gnueabihf": "1.11.29", + "@swc/core-linux-arm64-gnu": "1.11.29", + "@swc/core-linux-arm64-musl": "1.11.29", + "@swc/core-linux-x64-gnu": "1.11.29", + "@swc/core-linux-x64-musl": "1.11.29", + "@swc/core-win32-arm64-msvc": "1.11.29", + "@swc/core-win32-ia32-msvc": "1.11.29", + "@swc/core-win32-x64-msvc": "1.11.29", + "@swc/counter": "^0.1.3", + "@swc/types": "^0.1.21" + } + }, + "@swc/core-linux-x64-gnu": { + "version": "1.11.29", + "dev": true, + "optional": true + }, + "@swc/core-linux-x64-musl": { + "version": "1.11.29", + "dev": true, + "optional": true + }, + "@swc/counter": { + "version": "0.1.3", + "dev": true + }, + "@swc/types": { + "version": "0.1.21", + "dev": true, + "requires": { + "@swc/counter": "^0.1.3" + } + }, + "@tekdi/all-telemetry-sdk": { + "version": "0.0.32", + "requires": { + "grunt-karma": "^0.12.2", + "karma": "^3.0.0" + } + }, + "@testing-library/dom": { + "version": "8.20.1", + "requires": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.1.3", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, + "dependencies": { + "chalk": { + "version": "4.1.2", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + } + } + }, + "@testing-library/jest-dom": { + "version": "5.17.0", + "requires": { + "@adobe/css-tools": "^4.0.1", + "@babel/runtime": "^7.9.2", + "@types/testing-library__jest-dom": "^5.9.1", + "aria-query": "^5.0.0", + "chalk": "^3.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.5.6", + "lodash": "^4.17.15", + "redent": "^3.0.0" + } + }, + "@testing-library/react": { + "version": "13.4.0", + "requires": { + "@babel/runtime": "^7.12.5", + "@testing-library/dom": "^8.5.0", + "@types/react-dom": "^18.0.0" + } + }, + "@testing-library/user-event": { + "version": "13.5.0", + "requires": { + "@babel/runtime": "^7.12.5" + } + }, + "@tsconfig/node10": { + "version": "1.0.11" + }, + "@tsconfig/node12": { + "version": "1.0.11" + }, + "@tsconfig/node14": { + "version": "1.0.3" + }, + "@tsconfig/node16": { + "version": "1.0.4" + }, + "@types/aria-query": { + "version": "5.0.4" + }, + "@types/babel__core": { + "version": "7.20.5", + "dev": true, + "requires": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.27.0", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.4", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.20.7", + "dev": true, + "requires": { + "@babel/types": "^7.20.7" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4" + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "3.0.1", + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/jest": { + "version": "29.4.0", + "requires": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0" + }, + "pretty-format": { + "version": "29.4.3", + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + } + } + } + }, + "@types/json5": { + "version": "0.0.29", + "dev": true + }, + "@types/node": { + "version": "18.14.1" + }, + "@types/parse-json": { + "version": "4.0.2" + }, + "@types/prop-types": { + "version": "15.7.13" + }, + "@types/react": { + "version": "18.2.50", + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-dom": { + "version": "18.3.1", + "requires": { + "@types/react": "*" + } + }, + "@types/react-transition-group": { + "version": "4.4.10", + "requires": { + "@types/react": "*" + } + }, + "@types/scheduler": { + "version": "0.16.8" + }, + "@types/stack-utils": { + "version": "2.0.1" + }, + "@types/testing-library__jest-dom": { + "version": "5.14.5", + "requires": { + "@types/jest": "*" + } + }, + "@types/use-sync-external-store": { + "version": "0.0.3" + }, + "@types/yargs": { + "version": "17.0.22", + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0" + }, + "@vitejs/plugin-react": { + "version": "4.5.0", + "dev": true, + "requires": { + "@babel/core": "^7.26.10", + "@babel/plugin-transform-react-jsx-self": "^7.25.9", + "@babel/plugin-transform-react-jsx-source": "^7.25.9", + "@rolldown/pluginutils": "1.0.0-beta.9", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + } + }, + "@vitejs/plugin-react-swc": { + "version": "3.10.0", + "dev": true, + "requires": { + "@rolldown/pluginutils": "1.0.0-beta.9", + "@swc/core": "^1.11.22" + } + }, + "abort-controller": { + "version": "3.0.0", + "requires": { + "event-target-shim": "^5.0.0" + } + }, + "accepts": { + "version": "1.3.8", + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "7.4.1", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.2", + "dev": true + }, + "acorn-walk": { + "version": "8.3.4", + "requires": { + "acorn": "^8.11.0" + }, + "dependencies": { + "acorn": { + "version": "8.13.0" + } + } + }, + "after": { + "version": "0.8.2" + }, + "aggregate-error": { + "version": "3.1.0", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "8.17.1", + "requires": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + } + }, + "ansi-colors": { + "version": "4.1.3", + "dev": true + }, + "ansi-escapes": { + "version": "4.3.2", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + } + }, + "ansi-regex": { + "version": "5.0.1" + }, + "ansi-styles": { + "version": "4.3.0", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "2.0.0", + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "extend-shallow": { + "version": "3.0.2", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-descriptor": { + "version": "1.0.3", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "kind-of": { + "version": "6.0.3" + }, + "micromatch": { + "version": "3.1.10", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "normalize-path": { + "version": "2.1.1", + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "arg": { + "version": "4.1.3" + }, + "argparse": { + "version": "1.0.10", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "aria-query": { + "version": "5.1.3", + "requires": { + "deep-equal": "^2.0.5" + } + }, + "arr-diff": { + "version": "4.0.0" + }, + "arr-flatten": { + "version": "1.1.0" + }, + "arr-union": { + "version": "3.1.0" + }, + "array-buffer-byte-length": { + "version": "1.0.2", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + } + }, + "array-includes": { + "version": "3.1.9", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.24.0", + "es-object-atoms": "^1.1.1", + "get-intrinsic": "^1.3.0", + "is-string": "^1.1.1", + "math-intrinsics": "^1.1.0" + } + }, + "array-slice": { + "version": "0.2.3" + }, + "array-unique": { + "version": "0.3.2" + }, + "array.prototype.findlast": { + "version": "1.2.5", + "dev": true, + "requires": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + } + }, + "array.prototype.findlastindex": { + "version": "1.2.3", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + } + }, + "array.prototype.flat": { + "version": "1.3.2", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.flatmap": { + "version": "1.3.3", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-shim-unscopables": "^1.0.2" + } + }, + "array.prototype.tosorted": { + "version": "1.1.4", + "dev": true, + "requires": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + } + }, + "arraybuffer.prototype.slice": { + "version": "1.0.4", + "dev": true, + "requires": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + } + }, + "arraybuffer.slice": { + "version": "0.0.7" + }, + "asn1": { + "version": "0.2.6", + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0" + }, + "assign-symbols": { + "version": "1.0.0" + }, + "ast-types-flow": { + "version": "0.0.8", + "dev": true + }, + "astral-regex": { + "version": "2.0.0", + "dev": true + }, + "async-each": { + "version": "1.0.6" + }, + "async-function": { + "version": "1.0.0", + "dev": true + }, + "async-limiter": { + "version": "1.0.1" + }, + "asynckit": { + "version": "0.4.0" + }, + "atob": { + "version": "2.1.2" + }, + "available-typed-arrays": { + "version": "1.0.7", + "requires": { + "possible-typed-array-names": "^1.0.0" + } + }, + "aws-sign2": { + "version": "0.7.0" + }, + "aws4": { + "version": "1.12.0" + }, + "axe-core": { + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.3.tgz", + "integrity": "sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==", + "dev": true + }, + "axios": { + "version": "1.6.7", + "requires": { + "follow-redirects": "^1.15.4", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true + }, + "babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "requires": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + } + }, + "backo2": { + "version": "1.0.2" + }, + "balanced-match": { + "version": "1.0.2" + }, + "base": { + "version": "0.11.2", + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-descriptor": { + "version": "1.0.3", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + } + } + }, + "base-x": { + "version": "3.0.9", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "base64-arraybuffer": { + "version": "0.1.5" + }, + "base64id": { + "version": "1.0.0" + }, + "base64url": { + "version": "3.0.1" + }, + "base64url-universal": { + "version": "1.1.0", + "requires": { + "base64url": "^3.0.0" + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "better-assert": { + "version": "1.0.2", + "requires": { + "callsite": "1.0.0" + } + }, + "binary-extensions": { + "version": "1.13.1" + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "blob": { + "version": "0.0.5" + }, + "bluebird": { + "version": "3.7.2" + }, + "body-parser": { + "version": "1.20.3", + "requires": { + "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.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "bowser": { + "version": "2.11.0" + }, + "brace-expansion": { + "version": "1.1.11", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + } + }, + "browserslist": { + "version": "4.24.0", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + } + }, + "bs58": { + "version": "4.0.1", + "requires": { + "base-x": "^3.0.2" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0" + }, + "buffer-fill": { + "version": "1.0.0" + }, + "bytes": { + "version": "3.1.2" + }, + "cache-base": { + "version": "1.0.1", + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "call-bind": { + "version": "1.0.8", + "requires": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + } + }, + "call-bind-apply-helpers": { + "version": "1.0.2", + "requires": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + } + }, + "call-bound": { + "version": "1.0.4", + "requires": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + } + }, + "callsite": { + "version": "1.0.0" + }, + "callsites": { + "version": "3.1.0" + }, + "canonicalize": { + "version": "1.0.8" + }, + "canvas-confetti": { + "version": "1.9.3" + }, + "caseless": { + "version": "0.12.0" + }, + "chalk": { + "version": "3.0.0", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "character-error-rate": { + "version": "1.1.4" + }, + "chokidar": { + "version": "2.1.8", + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "dependencies": { + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true, + "requires": { + "bindings": "^1.5.0", + "nan": "^2.12.1" + } + }, + "glob-parent": { + "version": "3.1.0", + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + } + } + }, + "ci-info": { + "version": "3.8.0" + }, + "circular-json": { + "version": "0.5.9" + }, + "class-utils": { + "version": "0.3.6", + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + } + }, + "classnames": { + "version": "2.5.1" + }, + "clean-stack": { + "version": "2.2.0", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-truncate": { + "version": "2.1.0", + "dev": true, + "requires": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + } + }, + "clsx": { + "version": "2.1.1" + }, + "collection-visit": { + "version": "1.0.0", + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4" + }, + "colorette": { + "version": "1.4.0", + "dev": true + }, + "colors": { + "version": "1.4.0" + }, + "combine-lists": { + "version": "1.0.1", + "requires": { + "lodash": "^4.5.0" + } + }, + "combined-stream": { + "version": "1.0.8", + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "8.3.0", + "dev": true + }, + "component-bind": { + "version": "1.0.0" + }, + "component-emitter": { + "version": "1.3.1" + }, + "component-inherit": { + "version": "0.0.3" + }, + "concat-map": { + "version": "0.0.1" + }, + "connect": { + "version": "3.7.0", + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "content-type": { + "version": "1.0.5" + }, + "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==" + }, + "cookie": { + "version": "0.3.1" + }, + "copy-descriptor": { + "version": "0.1.1" + }, + "core-js": { + "version": "2.6.12" + }, + "core-util-is": { + "version": "1.0.3" + }, + "cosmiconfig": { + "version": "7.1.0", + "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" + } + }, + "create-require": { + "version": "1.1.1" + }, + "cross-spawn": { + "version": "7.0.3", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "crypto-js": { + "version": "4.2.0" + }, + "crypto-ld": { + "version": "3.9.0", + "requires": { + "base64url-universal": "^1.0.1", + "bs58": "^4.0.1", + "node-forge": "~0.10.0", + "semver": "^6.2.0", + "sodium-native": "^3.2.0" + } + }, + "css-vendor": { + "version": "2.0.8", + "dev": true, + "requires": { + "@babel/runtime": "^7.8.3", + "is-in-browser": "^1.0.2" + } + }, + "css.escape": { + "version": "1.5.1" + }, + "csstype": { + "version": "3.1.3" + }, + "custom-event": { + "version": "1.0.1" + }, + "damerau-levenshtein": { + "version": "1.0.8", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-uri-to-buffer": { + "version": "3.0.1" + }, + "data-view-buffer": { + "version": "1.0.2", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + } + }, + "data-view-byte-length": { + "version": "1.0.2", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + } + }, + "data-view-byte-offset": { + "version": "1.0.1", + "dev": true, + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + } + }, + "date-format": { + "version": "1.2.0" + }, + "dayjs": { + "version": "1.11.10" + }, + "debug": { + "version": "4.3.4", + "requires": { + "ms": "2.1.2" + } + }, + "decode-uri-component": { + "version": "0.2.2" + }, + "deep-diff": { + "version": "1.0.2" + }, + "deep-equal": { + "version": "2.2.0", + "requires": { + "call-bind": "^1.0.2", + "es-get-iterator": "^1.1.2", + "get-intrinsic": "^1.1.3", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.1", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + } + }, + "deep-is": { + "version": "0.1.4", + "dev": true + }, + "deepmerge": { + "version": "4.3.1" + }, + "define-data-property": { + "version": "1.1.4", + "requires": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + } + }, + "define-properties": { + "version": "1.2.1", + "requires": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "define-property": { + "version": "0.2.5", + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "delayed-stream": { + "version": "1.0.0" + }, + "depd": { + "version": "2.0.0" + }, + "destroy": { + "version": "1.2.0" + }, + "di": { + "version": "0.0.1" + }, + "diff": { + "version": "4.0.2" + }, + "diff-sequences": { + "version": "29.4.3" + }, + "doctrine": { + "version": "3.0.0", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-accessibility-api": { + "version": "0.5.16" + }, + "dom-helpers": { + "version": "5.2.1", + "requires": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "dom-serialize": { + "version": "2.2.1", + "requires": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "dunder-proto": { + "version": "1.0.1", + "requires": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1" + }, + "electron-to-chromium": { + "version": "1.5.41", + "dev": true + }, + "emoji-regex": { + "version": "9.2.2", + "dev": true + }, + "encodeurl": { + "version": "1.0.2" + }, + "engine.io": { + "version": "3.2.1", + "requires": { + "accepts": "~1.3.4", + "base64id": "1.0.0", + "cookie": "0.3.1", + "debug": "~3.1.0", + "engine.io-parser": "~2.1.0", + "ws": "~3.3.1" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "engine.io-client": { + "version": "3.2.1", + "requires": { + "component-emitter": "1.2.1", + "component-inherit": "0.0.3", + "debug": "~3.1.0", + "engine.io-parser": "~2.1.1", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "ws": "~3.3.1", + "xmlhttprequest-ssl": "~1.5.4", + "yeast": "0.1.2" + }, + "dependencies": { + "component-emitter": { + "version": "1.2.1" + }, + "debug": { + "version": "3.1.0", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "engine.io-parser": { + "version": "2.1.3", + "requires": { + "after": "0.8.2", + "arraybuffer.slice": "~0.0.7", + "base64-arraybuffer": "0.1.5", + "blob": "0.0.5", + "has-binary2": "~1.0.2" + } + }, + "enquirer": { + "version": "2.4.1", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" + } + }, + "ent": { + "version": "2.2.0" + }, + "error-ex": { + "version": "1.3.2", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.24.0", + "dev": true, + "requires": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.3.0", + "get-proto": "^1.0.1", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.2.1", + "is-set": "^2.0.3", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.1", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.4", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.4", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "stop-iteration-iterator": "^1.1.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.19" + } + }, + "es-define-property": { + "version": "1.0.1" + }, + "es-errors": { + "version": "1.3.0" + }, + "es-get-iterator": { + "version": "1.1.3", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + } + }, + "es-iterator-helpers": { + "version": "1.2.1", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.6", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.4", + "safe-array-concat": "^1.1.3" + } + }, + "es-object-atoms": { + "version": "1.1.1", + "requires": { + "es-errors": "^1.3.0" + } + }, + "es-set-tostringtag": { + "version": "2.1.0", + "dev": true, + "requires": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + } + }, + "es-shim-unscopables": { + "version": "1.0.2", + "dev": true, + "requires": { + "hasown": "^2.0.0" + } + }, + "es-to-primitive": { + "version": "1.3.0", + "dev": true, + "requires": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + } + }, + "esbuild": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "dev": true, + "requires": { + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" + } + }, + "escalade": { + "version": "3.2.0", + "dev": true + }, + "escape-html": { + "version": "1.0.3" + }, + "escape-string-regexp": { + "version": "4.0.0" + }, + "eslint": { + "version": "7.32.0", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "ajv": { + "version": "6.12.6", + "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" + } + }, + "chalk": { + "version": "4.1.2", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "globals": { + "version": "13.24.0", + "dev": true, + "requires": { + "type-fest": "^0.20.2" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "dev": true + }, + "semver": { + "version": "7.6.3", + "dev": true + }, + "type-fest": { + "version": "0.20.2", + "dev": true + } + } + }, + "eslint-config-prettier": { + "version": "8.10.0", + "dev": true + }, + "eslint-import-resolver-node": { + "version": "0.3.9", + "dev": true, + "requires": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-module-utils": { + "version": "2.8.0", + "dev": true, + "requires": { + "debug": "^3.2.7" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-plugin-import": { + "version": "2.29.1", + "dev": true, + "requires": { + "array-includes": "^3.1.7", + "array.prototype.findlastindex": "^1.2.3", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.8.0", + "hasown": "^2.0.0", + "is-core-module": "^2.13.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.7", + "object.groupby": "^1.0.1", + "object.values": "^1.1.7", + "semver": "^6.3.1", + "tsconfig-paths": "^3.15.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "doctrine": { + "version": "2.1.0", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + } + } + }, + "eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "dev": true, + "requires": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, + "dependencies": { + "aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true + } + } + }, + "eslint-plugin-prettier": { + "version": "3.4.1", + "dev": true, + "requires": { + "prettier-linter-helpers": "^1.0.0" + } + }, + "eslint-plugin-react": { + "version": "7.37.5", + "dev": true, + "requires": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.9", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "resolve": { + "version": "2.0.0-next.5", + "dev": true, + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + } + } + }, + "eslint-plugin-react-hooks": { + "version": "5.2.0", + "dev": true + }, + "eslint-scope": { + "version": "5.1.1", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "dev": true + } + } + }, + "eslint-utils": { + "version": "2.1.0", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "dev": true + } + } + }, + "eslint-visitor-keys": { + "version": "2.1.0", + "dev": true + }, + "esm": { + "version": "3.2.25" + }, + "espree": { + "version": "7.3.1", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "dev": true + }, + "esquery": { + "version": "1.5.0", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + } + }, + "esrecurse": { + "version": "4.3.0", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "dev": true + }, + "event-target-shim": { + "version": "5.0.1" + }, + "eventemitter3": { + "version": "4.0.7" + }, + "execa": { + "version": "5.1.1", + "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" + } + }, + "expand-braces": { + "version": "0.1.2", + "requires": { + "array-slice": "^0.2.3", + "array-unique": "^0.2.1", + "braces": "^0.1.2" + }, + "dependencies": { + "array-unique": { + "version": "0.2.1" + }, + "braces": { + "version": "0.1.5", + "requires": { + "expand-range": "^0.1.0" + } + } + } + }, + "expand-brackets": { + "version": "2.1.4", + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "expand-range": { + "version": "0.1.1", + "requires": { + "is-number": "^0.1.1", + "repeat-string": "^0.2.2" + }, + "dependencies": { + "is-number": { + "version": "0.1.1" + }, + "repeat-string": { + "version": "0.2.2" + } + } + }, + "expect": { + "version": "29.4.3", + "requires": { + "@jest/expect-utils": "^29.4.3", + "jest-get-type": "^29.4.3", + "jest-matcher-utils": "^29.4.3", + "jest-message-util": "^29.4.3", + "jest-util": "^29.4.3" + } + }, + "extend": { + "version": "3.0.2" + }, + "extend-shallow": { + "version": "2.0.1", + "requires": { + "is-extendable": "^0.1.0" + } + }, + "extglob": { + "version": "2.0.4", + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-descriptor": { + "version": "1.0.3", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + } + } + }, + "extsprintf": { + "version": "1.3.0" + }, + "faker": { + "version": "5.5.3" + }, + "fast-deep-equal": { + "version": "3.1.3" + }, + "fast-diff": { + "version": "1.3.0", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.1.0" + }, + "fast-levenshtein": { + "version": "2.0.6", + "dev": true + }, + "fast-uri": { + "version": "3.0.3" + }, + "fast-xml-parser": { + "version": "4.4.1", + "requires": { + "strnum": "^1.0.5" + } + }, + "fetch-blob": { + "version": "2.1.2" + }, + "ffmpeg": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/ffmpeg/-/ffmpeg-0.0.4.tgz", + "integrity": "sha512-3TgWUJJlZGQn+crJFyhsO/oNeRRnGTy6GhgS98oUCIfZrOW5haPPV7DUfOm3xJcHr5q3TJpjk2GudPutrNisRA==", + "requires": { + "when": ">= 0.0.1" + } + }, + "file-entry-cache": { + "version": "6.0.1", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "fill-range": { + "version": "4.0.0", + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + } + }, + "finalhandler": { + "version": "1.1.2", + "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", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + }, + "on-finished": { + "version": "2.3.0", + "requires": { + "ee-first": "1.1.1" + } + } + } + }, + "find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, + "flat-cache": { + "version": "3.2.0", + "dev": true, + "requires": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.9", + "dev": true + }, + "follow-redirects": { + "version": "1.15.5" + }, + "for-each": { + "version": "0.3.5", + "requires": { + "is-callable": "^1.2.7" + } + }, + "for-in": { + "version": "1.0.2" + }, + "forever-agent": { + "version": "0.6.1" + }, + "form-data": { + "version": "4.0.0", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "requires": { + "map-cache": "^0.2.2" + } + }, + "framer-motion": { + "version": "12.4.1", + "requires": { + "motion-dom": "^12.0.0", + "motion-utils": "^12.0.0", + "tslib": "^2.4.0" + } + }, + "fs.realpath": { + "version": "1.0.0" + }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "optional": true + }, + "function-bind": { + "version": "1.1.2" + }, + "function.prototype.name": { + "version": "1.1.8", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + } + }, + "functional-red-black-tree": { + "version": "1.0.1", + "dev": true + }, + "functions-have-names": { + "version": "1.2.3" + }, + "fuzzball": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/fuzzball/-/fuzzball-2.2.2.tgz", + "integrity": "sha512-NCJZdEur2qTZ6/dYjkvLnNOnDxN4JG1rOWSRJS2ser4cFGVqFNBu2JjudxU2kZrHqfKg1zmtHii/JmWLaEeDHw==", + "requires": { + "heap": ">=0.2.0", + "lodash": "^4.17.21", + "setimmediate": "^1.0.5" + } + }, + "gensync": { + "version": "1.0.0-beta.2", + "dev": true + }, + "get-intrinsic": { + "version": "1.3.0", + "requires": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + } + }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "dev": true + }, + "get-proto": { + "version": "1.0.1", + "requires": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + } + }, + "get-stream": { + "version": "6.0.1", + "dev": true + }, + "get-symbol-description": { + "version": "1.1.0", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + } + }, + "get-value": { + "version": "2.0.6" + }, + "getpass": { + "version": "0.1.7", + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.2.3", + "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" + } + }, + "glob-parent": { + "version": "5.1.2", + "requires": { + "is-glob": "^4.0.1" + } + }, + "globals": { + "version": "11.12.0" + }, + "globalthis": { + "version": "1.0.4", + "dev": true, + "requires": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + } + }, + "gopd": { + "version": "1.2.0" + }, + "graceful-fs": { + "version": "4.2.11" + }, + "grunt-karma": { + "version": "0.12.2", + "requires": { + "lodash": "^3.10.1" + }, + "dependencies": { + "lodash": { + "version": "3.10.1" + } + } + }, + "har-schema": { + "version": "2.0.0" + }, + "har-validator": { + "version": "5.1.5", + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "dependencies": { + "ajv": { + "version": "6.12.6", + "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" + } + }, + "json-schema-traverse": { + "version": "0.4.1" + } + } + }, + "has-bigints": { + "version": "1.0.2" + }, + "has-binary2": { + "version": "1.0.3", + "requires": { + "isarray": "2.0.1" + }, + "dependencies": { + "isarray": { + "version": "2.0.1" + } + } + }, + "has-cors": { + "version": "1.1.0" + }, + "has-flag": { + "version": "4.0.0" + }, + "has-property-descriptors": { + "version": "1.0.2", + "requires": { + "es-define-property": "^1.0.0" + } + }, + "has-proto": { + "version": "1.2.0", + "dev": true, + "requires": { + "dunder-proto": "^1.0.0" + } + }, + "has-symbols": { + "version": "1.1.0" + }, + "has-tostringtag": { + "version": "1.0.2", + "requires": { + "has-symbols": "^1.0.3" + } + }, + "has-value": { + "version": "1.0.0", + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hasown": { + "version": "2.0.2", + "requires": { + "function-bind": "^1.1.2" + } + }, + "heap": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/heap/-/heap-0.2.7.tgz", + "integrity": "sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==" + }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "requires": { + "react-is": "^16.7.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1" + } + } + }, + "homophones": { + "version": "1.0.1", + "requires": { + "axios": "^1.4.0", + "ts-node": "^10.9.1", + "typescript": "^5.1.6" + } + }, + "howler": { + "version": "2.2.4" + }, + "http-errors": { + "version": "2.0.0", + "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" + } + } + }, + "http-proxy": { + "version": "1.18.1", + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-signature": { + "version": "1.2.0", + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "human-signals": { + "version": "2.1.0", + "dev": true + }, + "husky": { + "version": "9.1.6", + "dev": true + }, + "hyphenate-style-name": { + "version": "1.0.4", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "4.0.6", + "dev": true + }, + "immediate": { + "version": "3.0.6" + }, + "immer": { + "version": "10.1.1" + }, + "immutable": { + "version": "4.3.5" + }, + "import-fresh": { + "version": "3.3.0", + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "dev": true + }, + "indent-string": { + "version": "4.0.0" + }, + "indexof": { + "version": "0.0.1" + }, + "indicasr-wasm": { + "version": "file:asr-utils/pkg" + }, + "inflight": { + "version": "1.0.6", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4" + }, + "internal-slot": { + "version": "1.1.0", + "requires": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + } + }, + "inversify": { + "version": "5.1.1" + }, + "is-accessor-descriptor": { + "version": "1.0.1", + "requires": { + "hasown": "^2.0.0" + } + }, + "is-arguments": { + "version": "1.1.1", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-array-buffer": { + "version": "3.0.5", + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + } + }, + "is-arrayish": { + "version": "0.2.1" + }, + "is-async-function": { + "version": "2.1.1", + "dev": true, + "requires": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + } + }, + "is-bigint": { + "version": "1.1.0", + "requires": { + "has-bigints": "^1.0.2" + } + }, + "is-binary-path": { + "version": "1.0.1", + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-boolean-object": { + "version": "1.2.2", + "requires": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + } + }, + "is-buffer": { + "version": "1.1.6" + }, + "is-callable": { + "version": "1.2.7" + }, + "is-core-module": { + "version": "2.13.1", + "requires": { + "hasown": "^2.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.1", + "requires": { + "hasown": "^2.0.0" + } + }, + "is-data-view": { + "version": "1.0.2", + "dev": true, + "requires": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + } + }, + "is-date-object": { + "version": "1.1.0", + "requires": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + } + }, + "is-descriptor": { + "version": "0.1.7", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + }, + "is-extendable": { + "version": "0.1.1" + }, + "is-extglob": { + "version": "2.1.1" + }, + "is-finalizationregistry": { + "version": "1.1.1", + "dev": true, + "requires": { + "call-bound": "^1.0.3" + } + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true + }, + "is-generator-function": { + "version": "1.1.0", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + } + }, + "is-glob": { + "version": "4.0.3", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-in-browser": { + "version": "1.1.3", + "dev": true + }, + "is-lite": { + "version": "1.2.1" + }, + "is-map": { + "version": "2.0.3" + }, + "is-negative-zero": { + "version": "2.0.3", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-number-object": { + "version": "1.1.1", + "requires": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + } + }, + "is-obj": { + "version": "1.0.1", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "requires": { + "isobject": "^3.0.1" + } + }, + "is-regex": { + "version": "1.2.1", + "requires": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + } + }, + "is-regexp": { + "version": "1.0.0", + "dev": true + }, + "is-set": { + "version": "2.0.3" + }, + "is-shared-array-buffer": { + "version": "1.0.4", + "requires": { + "call-bound": "^1.0.3" + } + }, + "is-stream": { + "version": "2.0.1", + "dev": true + }, + "is-string": { + "version": "1.1.1", + "requires": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + } + }, + "is-symbol": { + "version": "1.1.1", + "requires": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + } + }, + "is-typed-array": { + "version": "1.1.15", + "dev": true, + "requires": { + "which-typed-array": "^1.1.16" + } + }, + "is-typedarray": { + "version": "1.0.0" + }, + "is-url": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz", + "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==" + }, + "is-weakmap": { + "version": "2.0.2" + }, + "is-weakref": { + "version": "1.1.1", + "dev": true, + "requires": { + "call-bound": "^1.0.3" + } + }, + "is-weakset": { + "version": "2.0.4", + "requires": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + } + }, + "is-windows": { + "version": "1.0.2" + }, + "isarray": { + "version": "2.0.5" + }, + "isbinaryfile": { + "version": "3.0.3", + "requires": { + "buffer-alloc": "^1.2.0" + } + }, + "isexe": { + "version": "2.0.0", + "dev": true + }, + "isobject": { + "version": "3.0.1" + }, + "isstream": { + "version": "0.1.2" + }, + "iterator.prototype": { + "version": "1.1.5", + "dev": true, + "requires": { + "define-data-property": "^1.1.4", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "get-proto": "^1.0.0", + "has-symbols": "^1.1.0", + "set-function-name": "^2.0.2" + } + }, + "jest-diff": { + "version": "29.4.3", + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "dependencies": { + "chalk": { + "version": "4.1.2", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "pretty-format": { + "version": "29.4.3", + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0" + } + } + } + } + }, + "jest-get-type": { + "version": "29.4.3" + }, + "jest-matcher-utils": { + "version": "29.4.3", + "requires": { + "chalk": "^4.0.0", + "jest-diff": "^29.4.3", + "jest-get-type": "^29.4.3", + "pretty-format": "^29.4.3" + }, + "dependencies": { + "chalk": { + "version": "4.1.2", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "pretty-format": { + "version": "29.4.3", + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0" + } + } + } + } + }, + "jest-message-util": { + "version": "29.4.3", + "requires": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.4.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.4.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "dependencies": { + "chalk": { + "version": "4.1.2", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "pretty-format": { + "version": "29.4.3", + "requires": { + "@jest/schemas": "^29.4.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0" + } + } + } + } + }, + "jest-util": { + "version": "29.4.3", + "requires": { + "@jest/types": "^29.4.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "dependencies": { + "chalk": { + "version": "4.1.2", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + } + } + }, + "js-tokens": { + "version": "4.0.0" + }, + "js-yaml": { + "version": "3.14.1", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1" + }, + "jsesc": { + "version": "3.0.2" + }, + "json-buffer": { + "version": "3.0.1", + "dev": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1" + }, + "json-schema": { + "version": "0.4.0" + }, + "json-schema-traverse": { + "version": "1.0.0" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1" + }, + "json5": { + "version": "2.2.3", + "dev": true + }, + "jsonld": { + "version": "5.2.0", + "requires": { + "@digitalbazaar/http-client": "^1.1.0", + "canonicalize": "^1.0.1", + "lru-cache": "^6.0.0", + "rdf-canonize": "^3.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0" + } + } + }, + "jsonld-signatures": { + "version": "6.0.0", + "requires": { + "base64url": "^3.0.1", + "crypto-ld": "^3.7.0", + "jsonld": "^2.0.2", + "node-forge": "^0.10.0", + "security-context": "^4.0.0", + "serialize-error": "^5.0.0" + }, + "dependencies": { + "jsonld": { + "version": "2.0.2", + "requires": { + "canonicalize": "^1.0.1", + "lru-cache": "^5.1.1", + "rdf-canonize": "^1.0.2", + "request": "^2.88.0", + "semver": "^6.3.0", + "xmldom": "0.1.19" + } + }, + "rdf-canonize": { + "version": "1.2.0", + "requires": { + "node-forge": "^0.10.0", + "semver": "^6.3.0" + } + } + } + }, + "jsprim": { + "version": "1.4.2", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "jss": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "csstype": "^3.0.2", + "is-in-browser": "^1.1.3", + "tiny-warning": "^1.0.2" + } + }, + "jss-plugin-camel-case": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "hyphenate-style-name": "^1.0.3", + "jss": "10.10.0" + } + }, + "jss-plugin-default-unit": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "jss-plugin-global": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "jss-plugin-nested": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0", + "tiny-warning": "^1.0.2" + } + }, + "jss-plugin-props-sort": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0" + } + }, + "jss-plugin-rule-value-function": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "jss": "10.10.0", + "tiny-warning": "^1.0.2" + } + }, + "jss-plugin-vendor-prefixer": { + "version": "10.10.0", + "dev": true, + "requires": { + "@babel/runtime": "^7.3.1", + "css-vendor": "^2.0.8", + "jss": "10.10.0" + } + }, + "jsx-ast-utils": { + "version": "3.3.5", + "dev": true, + "requires": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + } + }, + "jszip": { + "version": "3.10.1", + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + } + }, + "jwt-decode": { + "version": "4.0.0" + }, + "karma": { + "version": "3.1.4", + "requires": { + "bluebird": "^3.3.0", + "body-parser": "^1.16.1", + "chokidar": "^2.0.3", + "colors": "^1.1.0", + "combine-lists": "^1.0.0", + "connect": "^3.6.0", + "core-js": "^2.2.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.0", + "expand-braces": "^0.1.1", + "flatted": "^2.0.0", + "glob": "^7.1.1", + "graceful-fs": "^4.1.2", + "http-proxy": "^1.13.0", + "isbinaryfile": "^3.0.0", + "lodash": "^4.17.5", + "log4js": "^3.0.0", + "mime": "^2.3.1", + "minimatch": "^3.0.2", + "optimist": "^0.6.1", + "qjobs": "^1.1.4", + "range-parser": "^1.2.0", + "rimraf": "^2.6.0", + "safe-buffer": "^5.0.1", + "socket.io": "2.1.1", + "source-map": "^0.6.1", + "tmp": "0.0.33", + "useragent": "2.3.0" + }, + "dependencies": { + "flatted": { + "version": "2.0.2" + }, + "rimraf": { + "version": "2.7.1", + "requires": { + "glob": "^7.1.3" + } + }, + "source-map": { + "version": "0.6.1" + } + } + }, + "keyv": { + "version": "4.5.4", + "dev": true, + "requires": { + "json-buffer": "3.0.1" + } + }, + "kind-of": { + "version": "3.2.2", + "requires": { + "is-buffer": "^1.1.5" + } + }, + "ky": { + "version": "0.25.1" + }, + "ky-universal": { + "version": "0.8.2", + "requires": { + "abort-controller": "^3.0.0", + "node-fetch": "3.0.0-beta.9" + }, + "dependencies": { + "node-fetch": { + "version": "3.0.0-beta.9", + "requires": { + "data-uri-to-buffer": "^3.0.1", + "fetch-blob": "^2.1.1" + } + } + } + }, + "language-subtag-registry": { + "version": "0.3.22", + "dev": true + }, + "language-tags": { + "version": "1.0.9", + "dev": true, + "requires": { + "language-subtag-registry": "^0.3.20" + } + }, + "levn": { + "version": "0.4.1", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "lie": { + "version": "3.3.0", + "requires": { + "immediate": "~3.0.5" + } + }, + "lines-and-columns": { + "version": "1.2.4" + }, + "lint-staged": { + "version": "11.2.6", + "dev": true, + "requires": { + "cli-truncate": "2.1.0", + "colorette": "^1.4.0", + "commander": "^8.2.0", + "cosmiconfig": "^7.0.1", + "debug": "^4.3.2", + "enquirer": "^2.3.6", + "execa": "^5.1.1", + "listr2": "^3.12.2", + "micromatch": "^4.0.4", + "normalize-path": "^3.0.0", + "please-upgrade-node": "^3.2.0", + "string-argv": "0.3.1", + "stringify-object": "3.3.0", + "supports-color": "8.1.1" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "listr2": { + "version": "3.14.0", + "dev": true, + "requires": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "dependencies": { + "colorette": { + "version": "2.0.20", + "dev": true + } + } + }, + "lodash": { + "version": "4.17.21" + }, + "lodash.merge": { + "version": "4.6.2", + "dev": true + }, + "lodash.truncate": { + "version": "4.4.2", + "dev": true + }, + "log-update": { + "version": "4.0.0", + "dev": true, + "requires": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "slice-ansi": { + "version": "4.0.0", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + } + } + }, + "log4js": { + "version": "3.0.6", + "requires": { + "circular-json": "^0.5.5", + "date-format": "^1.2.0", + "debug": "^3.1.0", + "rfdc": "^1.1.2", + "streamroller": "0.7.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "loose-envify": { + "version": "1.4.0", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "5.1.1", + "requires": { + "yallist": "^3.0.2" + } + }, + "lz-string": { + "version": "1.5.0" + }, + "make-error": { + "version": "1.3.6" + }, + "map-cache": { + "version": "0.2.2" + }, + "map-visit": { + "version": "1.0.0", + "requires": { + "object-visit": "^1.0.0" + } + }, + "math-intrinsics": { + "version": "1.1.0" + }, + "media-typer": { + "version": "0.3.0" + }, + "memoize-one": { + "version": "6.0.0" + }, + "merge-stream": { + "version": "2.0.0", + "dev": true + }, + "metaphone": { + "version": "2.0.1" + }, + "micromatch": { + "version": "4.0.5", + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0" + }, + "to-regex-range": { + "version": "5.0.1", + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "mime": { + "version": "2.6.0" + }, + "mime-db": { + "version": "1.52.0" + }, + "mime-types": { + "version": "2.1.35", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "dev": true + }, + "min-indent": { + "version": "1.0.1" + }, + "minimatch": { + "version": "3.1.2", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.10" + }, + "mixin-deep": { + "version": "1.3.2", + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.6", + "requires": { + "minimist": "^1.2.6" + }, + "dependencies": { + "minimist": { + "version": "1.2.8" + } + } + }, + "motion-dom": { + "version": "12.0.0", + "requires": { + "motion-utils": "^12.0.0" + } + }, + "motion-utils": { + "version": "12.0.0" + }, + "ms": { + "version": "2.1.2" + }, + "nan": { + "version": "2.22.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.22.2.tgz", + "integrity": "sha512-DANghxFkS1plDdRsX0X9pm0Z6SJNN6gBdtXfanwoZ8hooC5gosGFSBGRYHUVPz1asKA/kMRqDRdHrluZ61SpBQ==", + "optional": true + }, + "nanoid": { + "version": "3.3.11", + "dev": true + }, + "nanomatch": { + "version": "1.2.13", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "extend-shallow": { + "version": "3.0.2", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-descriptor": { + "version": "1.0.3", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "kind-of": { + "version": "6.0.3" + } + } + }, + "natural-compare": { + "version": "1.4.0", + "dev": true + }, + "negotiator": { + "version": "0.6.3" + }, + "node-fetch": { + "version": "2.6.5", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "node-forge": { + "version": "0.10.0" + }, + "node-gyp-build": { + "version": "4.8.0", + "optional": true + }, + "node-releases": { + "version": "2.0.18", + "dev": true + }, + "normalize-path": { + "version": "3.0.0" + }, + "npm-run-path": { + "version": "4.0.1", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } + }, + "oauth-sign": { + "version": "0.9.0" + }, + "object-assign": { + "version": "4.1.1" + }, + "object-component": { + "version": "0.0.3" + }, + "object-copy": { + "version": "0.1.0", + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + } + }, + "object-inspect": { + "version": "1.13.4" + }, + "object-is": { + "version": "1.1.5", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "object-keys": { + "version": "1.1.1" + }, + "object-visit": { + "version": "1.0.1", + "requires": { + "isobject": "^3.0.0" + } + }, + "object.assign": { + "version": "4.1.7", + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + } + }, + "object.entries": { + "version": "1.1.9", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.1.1" + } + }, + "object.fromentries": { + "version": "2.0.8", + "dev": true, + "requires": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + } + }, + "object.groupby": { + "version": "1.0.1", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1" + } + }, + "object.pick": { + "version": "1.3.0", + "requires": { + "isobject": "^3.0.1" + } + }, + "object.values": { + "version": "1.2.1", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + } + }, + "on-finished": { + "version": "2.4.1", + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "optimist": { + "version": "0.6.1", + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + } + }, + "optionator": { + "version": "0.9.3", + "dev": true, + "requires": { + "@aashutoshrathi/word-wrap": "^1.2.3", + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0" + } + }, + "os-tmpdir": { + "version": "1.0.2" + }, + "own-keys": { + "version": "1.0.1", + "dev": true, + "requires": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + } + }, + "p-map": { + "version": "4.0.0", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "pako": { + "version": "1.0.11" + }, + "parent-module": { + "version": "1.0.1", + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-json": { + "version": "5.2.0", + "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" + } + }, + "parseqs": { + "version": "0.0.5", + "requires": { + "better-assert": "~1.0.0" + } + }, + "parseuri": { + "version": "0.0.5", + "requires": { + "better-assert": "~1.0.0" + } + }, + "parseurl": { + "version": "1.3.3" + }, + "pascalcase": { + "version": "0.1.1" + }, + "path-dirname": { + "version": "1.0.2" + }, + "path-is-absolute": { + "version": "1.0.1" + }, + "path-key": { + "version": "3.1.1", + "dev": true + }, + "path-parse": { + "version": "1.0.7" + }, + "path-type": { + "version": "4.0.0" + }, + "performance-now": { + "version": "2.1.0" + }, + "picocolors": { + "version": "1.1.1" + }, + "picomatch": { + "version": "2.3.1" + }, + "please-upgrade-node": { + "version": "3.2.0", + "dev": true, + "requires": { + "semver-compare": "^1.0.0" + } + }, + "popper.js": { + "version": "1.16.1" + }, + "posix-character-classes": { + "version": "0.1.1" + }, + "possible-typed-array-names": { + "version": "1.1.0" + }, + "postcss": { + "version": "8.5.4", + "dev": true, + "requires": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + } + }, + "prelude-ls": { + "version": "1.2.1", + "dev": true + }, + "prettier": { + "version": "2.8.8", + "dev": true + }, + "prettier-linter-helpers": { + "version": "1.0.0", + "dev": true, + "requires": { + "fast-diff": "^1.1.2" + } + }, + "pretty-format": { + "version": "27.5.1", + "requires": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "5.2.0" + }, + "react-is": { + "version": "17.0.2" + } + } + }, + "process-nextick-args": { + "version": "2.0.1" + }, + "progress": { + "version": "2.0.3", + "dev": true + }, + "prop-types": { + "version": "15.8.1", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + }, + "dependencies": { + "react-is": { + "version": "16.13.1" + } + } + }, + "proxy-from-env": { + "version": "1.1.0" + }, + "pseudomap": { + "version": "1.0.2" + }, + "psl": { + "version": "1.9.0" + }, + "punycode": { + "version": "2.3.1" + }, + "qjobs": { + "version": "1.2.0" + }, + "qs": { + "version": "6.13.0", + "requires": { + "side-channel": "^1.0.6" + } + }, + "range-parser": { + "version": "1.2.1" + }, + "raw-body": { + "version": "2.5.2", + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "rdf-canonize": { + "version": "3.4.0", + "requires": { + "setimmediate": "^1.0.5" + } + }, + "react": { + "version": "18.3.1", + "dev": true, + "requires": { + "loose-envify": "^1.1.0" + } + }, + "react-audio-analyser": { + "version": "1.0.0" + }, + "react-audio-player": { + "version": "0.17.0", + "requires": { + "prop-types": "^15.7.2" + } + }, + "react-confetti": { + "version": "6.1.0", + "requires": { + "tween-functions": "^1.2.0" + } + }, + "react-dom": { + "version": "18.3.1", + "requires": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + } + }, + "react-floater": { + "version": "0.7.9", + "requires": { + "deepmerge": "^4.3.1", + "is-lite": "^0.8.2", + "popper.js": "^1.16.0", + "prop-types": "^15.8.1", + "tree-changes": "^0.9.1" + }, + "dependencies": { + "@gilbarbara/deep-equal": { + "version": "0.1.2" + }, + "is-lite": { + "version": "0.8.2" + }, + "tree-changes": { + "version": "0.9.3", + "requires": { + "@gilbarbara/deep-equal": "^0.1.1", + "is-lite": "^0.8.2" + } + } + } + }, + "react-infinite-scroll-component": { + "version": "6.1.0", + "requires": { + "throttle-debounce": "^2.1.0" + } + }, + "react-innertext": { + "version": "1.1.5" + }, + "react-is": { + "version": "18.2.0" + }, + "react-joyride": { + "version": "2.9.3", + "requires": { + "@gilbarbara/deep-equal": "^0.3.1", + "deep-diff": "^1.0.2", + "deepmerge": "^4.3.1", + "is-lite": "^1.2.1", + "react-floater": "^0.7.9", + "react-innertext": "^1.1.5", + "react-is": "^16.13.1", + "scroll": "^3.0.1", + "scrollparent": "^2.1.0", + "tree-changes": "^0.11.2", + "type-fest": "^4.27.0" + }, + "dependencies": { + "react-is": { + "version": "16.13.1" + }, + "type-fest": { + "version": "4.39.1" + } + } + }, + "react-lifecycles-compat": { + "version": "3.0.4" + }, + "react-redux": { + "version": "9.1.2", + "requires": { + "@types/use-sync-external-store": "^0.0.3", + "use-sync-external-store": "^1.0.0" + } + }, + "react-refresh": { + "version": "0.17.0", + "dev": true + }, + "react-router": { + "version": "6.8.1", + "requires": { + "@remix-run/router": "1.3.2" + } + }, + "react-router-dom": { + "version": "6.8.1", + "requires": { + "@remix-run/router": "1.3.2", + "react-router": "6.8.1" + } + }, + "react-speech-recognition": { + "version": "3.10.0" + }, + "react-transition-group": { + "version": "4.4.5", + "requires": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + } + }, + "react-virtualized": { + "version": "9.22.5", + "requires": { + "@babel/runtime": "^7.7.2", + "clsx": "^1.0.4", + "dom-helpers": "^5.1.3", + "loose-envify": "^1.4.0", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.4" + }, + "dependencies": { + "clsx": { + "version": "1.2.1" + } + } + }, + "react-virtualized-auto-sizer": { + "version": "1.0.21" + }, + "react-window": { + "version": "1.8.10", + "requires": { + "@babel/runtime": "^7.0.0", + "memoize-one": ">=3.1.1 <6" + }, + "dependencies": { + "memoize-one": { + "version": "5.2.1" + } + } + }, + "readable-stream": { + "version": "2.3.8", + "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" + }, + "dependencies": { + "isarray": { + "version": "1.0.0" + } + } + }, + "readdirp": { + "version": "2.2.1", + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "extend-shallow": { + "version": "3.0.2", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-descriptor": { + "version": "1.0.3", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "requires": { + "is-plain-object": "^2.0.4" + } + }, + "kind-of": { + "version": "6.0.3" + }, + "micromatch": { + "version": "3.1.10", + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + } + } + }, + "recordrtc": { + "version": "5.6.2" + }, + "redent": { + "version": "3.0.0", + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, + "redux": { + "version": "4.2.1", + "requires": { + "@babel/runtime": "^7.9.2" + } + }, + "redux-saga": { + "version": "1.3.0", + "requires": { + "@redux-saga/core": "^1.3.0" + } + }, + "redux-thunk": { + "version": "3.1.0" + }, + "reflect-metadata": { + "version": "0.1.14" + }, + "reflect.getprototypeof": { + "version": "1.0.10", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + } + }, + "regenerator-runtime": { + "version": "0.14.1" + }, + "regex-not": { + "version": "1.0.2", + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "regexp.prototype.flags": { + "version": "1.5.4", + "requires": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + } + }, + "regexpp": { + "version": "3.2.0", + "dev": true + }, + "remove-trailing-separator": { + "version": "1.1.0" + }, + "repeat-element": { + "version": "1.1.4" + }, + "repeat-string": { + "version": "1.6.1" + }, + "request": { + "version": "2.88.2", + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "qs": { + "version": "6.5.3" + }, + "uuid": { + "version": "3.4.0" + } + } + }, + "require-from-string": { + "version": "2.0.2" + }, + "requires-port": { + "version": "1.0.0" + }, + "reselect": { + "version": "5.1.1" + }, + "resolve": { + "version": "1.22.8", + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-from": { + "version": "4.0.0" + }, + "resolve-url": { + "version": "0.2.1" + }, + "restore-cursor": { + "version": "3.1.0", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15" + }, + "rfdc": { + "version": "1.3.1" + }, + "rimraf": { + "version": "3.0.2", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rollup": { + "version": "3.29.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.5.tgz", + "integrity": "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w==", + "dev": true, + "requires": { + "fsevents": "~2.3.2" + } + }, + "rxjs": { + "version": "7.8.1", + "dev": true, + "requires": { + "tslib": "^2.1.0" + } + }, + "safe-array-concat": { + "version": "1.1.3", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + } + }, + "safe-buffer": { + "version": "5.1.2" + }, + "safe-push-apply": { + "version": "1.0.0", + "dev": true, + "requires": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + } + }, + "safe-regex": { + "version": "1.1.0", + "requires": { + "ret": "~0.1.10" + } + }, + "safe-regex-test": { + "version": "1.1.0", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + } + }, + "safer-buffer": { + "version": "2.1.2" + }, + "sass": { + "version": "1.70.0", + "requires": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "dependencies": { + "anymatch": { + "version": "3.1.3", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "binary-extensions": { + "version": "2.2.0" + }, + "braces": { + "version": "3.0.2", + "requires": { + "fill-range": "^7.0.1" + } + }, + "chokidar": { + "version": "3.5.3", + "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" + } + }, + "fill-range": { + "version": "7.0.1", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-number": { + "version": "7.0.0" + }, + "readdirp": { + "version": "3.6.0", + "requires": { + "picomatch": "^2.2.1" + } + }, + "to-regex-range": { + "version": "5.0.1", + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "scheduler": { + "version": "0.23.2", + "requires": { + "loose-envify": "^1.1.0" + } + }, + "scroll": { + "version": "3.0.1" + }, + "scrollparent": { + "version": "2.1.0" + }, + "security-context": { + "version": "4.0.0" + }, + "semver": { + "version": "6.3.1" + }, + "semver-compare": { + "version": "1.0.0", + "dev": true + }, + "serialize-error": { + "version": "5.0.0", + "requires": { + "type-fest": "^0.8.0" + }, + "dependencies": { + "type-fest": { + "version": "0.8.1" + } + } + }, + "set-function-length": { + "version": "1.2.2", + "requires": { + "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" + } + }, + "set-function-name": { + "version": "2.0.2", + "requires": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + } + }, + "set-proto": { + "version": "1.0.0", + "dev": true, + "requires": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + } + }, + "set-value": { + "version": "2.0.1", + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + } + }, + "setimmediate": { + "version": "1.0.5" + }, + "setprototypeof": { + "version": "1.2.0" + }, + "shebang-command": { + "version": "2.0.0", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "dev": true + }, + "side-channel": { + "version": "1.1.0", + "requires": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + } + }, + "side-channel-list": { + "version": "1.0.0", + "requires": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + } + }, + "side-channel-map": { + "version": "1.0.1", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + } + }, + "side-channel-weakmap": { + "version": "1.0.2", + "requires": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + } + }, + "signal-exit": { + "version": "3.0.7", + "dev": true + }, + "slash": { + "version": "3.0.0" + }, + "slice-ansi": { + "version": "3.0.0", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + }, + "snapdragon": { + "version": "0.8.2", + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-descriptor": { + "version": "1.0.3", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "requires": { + "kind-of": "^3.2.0" + } + }, + "socket.io": { + "version": "2.1.1", + "requires": { + "debug": "~3.1.0", + "engine.io": "~3.2.0", + "has-binary2": "~1.0.2", + "socket.io-adapter": "~1.1.0", + "socket.io-client": "2.1.1", + "socket.io-parser": "~3.2.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "socket.io-adapter": { + "version": "1.1.2" + }, + "socket.io-client": { + "version": "2.1.1", + "requires": { + "backo2": "1.0.2", + "base64-arraybuffer": "0.1.5", + "component-bind": "1.0.0", + "component-emitter": "1.2.1", + "debug": "~3.1.0", + "engine.io-client": "~3.2.0", + "has-binary2": "~1.0.2", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "object-component": "0.0.3", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "socket.io-parser": "~3.2.0", + "to-array": "0.1.4" + }, + "dependencies": { + "component-emitter": { + "version": "1.2.1" + }, + "debug": { + "version": "3.1.0", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0" + } + } + }, + "socket.io-parser": { + "version": "3.2.0", + "requires": { + "component-emitter": "1.2.1", + "debug": "~3.1.0", + "isarray": "2.0.1" + }, + "dependencies": { + "component-emitter": { + "version": "1.2.1" + }, + "debug": { + "version": "3.1.0", + "requires": { + "ms": "2.0.0" + } + }, + "isarray": { + "version": "2.0.1" + }, + "ms": { + "version": "2.0.0" + } + } + }, + "sodium-native": { + "version": "3.4.1", + "optional": true, + "requires": { + "node-gyp-build": "^4.3.0" + } + }, + "source-map": { + "version": "0.5.7" + }, + "source-map-js": { + "version": "1.2.1" + }, + "source-map-resolve": { + "version": "0.5.3", + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-url": { + "version": "0.4.1" + }, + "split-graphemes": { + "version": "0.5.0" + }, + "split-string": { + "version": "3.1.0", + "requires": { + "extend-shallow": "^3.0.0" + }, + "dependencies": { + "extend-shallow": { + "version": "3.0.2", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "sprintf-js": { + "version": "1.0.3", + "dev": true + }, + "sshpk": { + "version": "1.18.0", + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stack-utils": { + "version": "2.0.6", + "requires": { + "escape-string-regexp": "^2.0.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "2.0.0" + } + } + }, + "static-extend": { + "version": "0.1.2", + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + } + }, + "statuses": { + "version": "1.5.0" + }, + "stop-iteration-iterator": { + "version": "1.1.0", + "requires": { + "es-errors": "^1.3.0", + "internal-slot": "^1.1.0" + } + }, + "streamroller": { + "version": "0.7.0", + "requires": { + "date-format": "^1.2.0", + "debug": "^3.1.0", + "mkdirp": "^0.5.1", + "readable-stream": "^2.3.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "string_decoder": { + "version": "1.1.1", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "string-argv": { + "version": "0.3.1", + "dev": true + }, + "string-width": { + "version": "4.2.3", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "emoji-regex": { + "version": "8.0.0", + "dev": true + } + } + }, + "string.prototype.includes": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", + "dev": true, + "requires": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + } + }, + "string.prototype.matchall": { + "version": "4.0.12", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.6", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "regexp.prototype.flags": "^1.5.3", + "set-function-name": "^2.0.2", + "side-channel": "^1.1.0" + } + }, + "string.prototype.repeat": { + "version": "1.0.0", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "string.prototype.trim": { + "version": "1.2.10", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + } + }, + "string.prototype.trimend": { + "version": "1.0.9", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + } + }, + "string.prototype.trimstart": { + "version": "1.0.8", + "dev": true, + "requires": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + } + }, + "stringify-object": { + "version": "3.3.0", + "dev": true, + "requires": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + } + }, + "strip-ansi": { + "version": "6.0.1", + "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "dev": true + }, + "strip-final-newline": { + "version": "2.0.0", + "dev": true + }, + "strip-indent": { + "version": "3.0.0", + "requires": { + "min-indent": "^1.0.0" + } + }, + "strip-json-comments": { + "version": "3.1.1", + "dev": true + }, + "strnum": { + "version": "1.0.5" + }, + "stylis": { + "version": "4.2.0" + }, + "supports-color": { + "version": "7.2.0", + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0" + }, + "table": { + "version": "6.8.1", + "dev": true, + "requires": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "slice-ansi": { + "version": "4.0.0", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + } + } + } + }, + "text-table": { + "version": "0.2.0", + "dev": true + }, + "throttle-debounce": { + "version": "2.3.0" + }, + "through": { + "version": "2.3.8", + "dev": true + }, + "tiny-warning": { + "version": "1.0.3", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-array": { + "version": "0.1.4" + }, + "to-object-path": { + "version": "0.3.0", + "requires": { + "kind-of": "^3.0.2" + } + }, + "to-regex": { + "version": "3.0.2", + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "extend-shallow": { + "version": "3.0.2", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "is-descriptor": { + "version": "1.0.3", + "requires": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + } + }, + "is-extendable": { + "version": "1.0.1", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "to-regex-range": { + "version": "2.1.1", + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "toidentifier": { + "version": "1.0.1" + }, + "tough-cookie": { + "version": "2.5.0", + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "tr46": { + "version": "0.0.3" + }, + "tree-changes": { + "version": "0.11.3", + "requires": { + "@gilbarbara/deep-equal": "^0.3.1", + "is-lite": "^1.2.1" + } + }, + "ts-node": { + "version": "10.9.2", + "requires": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "dependencies": { + "acorn": { + "version": "8.13.0" + } + } + }, + "tsconfig-paths": { + "version": "3.15.0", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.2", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "dependencies": { + "json5": { + "version": "1.0.2", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "minimist": { + "version": "1.2.8", + "dev": true + } + } + }, + "tslib": { + "version": "2.8.0" + }, + "tunnel-agent": { + "version": "0.6.0", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tween-functions": { + "version": "1.2.0" + }, + "tweetnacl": { + "version": "0.14.5" + }, + "type-check": { + "version": "0.4.0", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.21.3", + "dev": true + }, + "type-is": { + "version": "1.6.18", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typed-array-buffer": { + "version": "1.0.3", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + } + }, + "typed-array-byte-length": { + "version": "1.0.3", + "dev": true, + "requires": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + } + }, + "typed-array-byte-offset": { + "version": "1.0.4", + "dev": true, + "requires": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + } + }, + "typed-array-length": { + "version": "1.0.7", + "dev": true, + "requires": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + } + }, + "typescript": { + "version": "5.6.3" + }, + "typescript-compare": { + "version": "0.0.2", + "requires": { + "typescript-logic": "^0.0.0" + } + }, + "typescript-logic": { + "version": "0.0.0" + }, + "typescript-tuple": { + "version": "2.2.1", + "requires": { + "typescript-compare": "^0.0.2" + } + }, + "ultron": { + "version": "1.1.1" + }, + "unbox-primitive": { + "version": "1.1.0", + "dev": true, + "requires": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + } + }, + "union-value": { + "version": "1.0.1", + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "unpipe": { + "version": "1.0.0" + }, + "unset-value": { + "version": "1.0.0", + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4" + }, + "isarray": { + "version": "1.0.0" + } + } + }, + "upath": { + "version": "1.2.0" + }, + "update-browserslist-db": { + "version": "1.1.1", + "dev": true, + "requires": { + "escalade": "^3.2.0", + "picocolors": "^1.1.0" + } + }, + "uri-js": { + "version": "4.4.1", + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0" + }, + "use": { + "version": "3.1.1" + }, + "use-sound": { + "version": "4.0.3", + "requires": { + "howler": "^2.1.3" + } + }, + "use-sync-external-store": { + "version": "1.2.2" + }, + "useragent": { + "version": "2.3.0", + "requires": { + "lru-cache": "4.1.x", + "tmp": "0.0.x" + }, + "dependencies": { + "lru-cache": { + "version": "4.1.5", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2" + } + } + }, + "util-deprecate": { + "version": "1.0.2" + }, + "utils-merge": { + "version": "1.0.1" + }, + "uuid": { + "version": "9.0.1" + }, + "v8-compile-cache": { + "version": "2.4.0", + "dev": true + }, + "v8-compile-cache-lib": { + "version": "3.0.1" + }, + "verror": { + "version": "1.10.0", + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "dependencies": { + "core-util-is": { + "version": "1.0.2" + } + } + }, + "vite": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.2.tgz", + "integrity": "sha512-tBCZBNSBbHQkaGyhGCDUGqeo2ph8Fstyp6FMSvTtsXeZSPpSMGlviAOav2hxVTqFcx8Hj/twtWKsMJXNY0xI8w==", + "dev": true, + "requires": { + "esbuild": "^0.18.10", + "fsevents": "~2.3.2", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + } + }, + "vite-plugin-wasm": { + "version": "3.4.1" + }, + "void-elements": { + "version": "2.0.1" + }, + "web-vitals": { + "version": "2.1.4" + }, + "webidl-conversions": { + "version": "3.0.1" + }, + "whatwg-fetch": { + "version": "3.6.20" + }, + "whatwg-url": { + "version": "5.0.0", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "when": { + "version": "3.7.8", + "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", + "integrity": "sha512-5cZ7mecD3eYcMiCH4wtRPA5iFJZ50BJYDfckI5RRpQiktMiYTcn0ccLTZOvcbBume+1304fQztxeNzNS9Gvrnw==" + }, + "which": { + "version": "2.0.2", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.1.1", + "requires": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + } + }, + "which-builtin-type": { + "version": "1.2.1", + "dev": true, + "requires": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + } + }, + "which-collection": { + "version": "1.0.2", + "requires": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + } + }, + "which-typed-array": { + "version": "1.1.19", + "requires": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + } + }, + "wordwrap": { + "version": "0.0.3" + }, + "wrap-ansi": { + "version": "7.0.0", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2" + }, + "ws": { + "version": "3.3.3", + "requires": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + }, + "xmldom": { + "version": "0.1.19" + }, + "xmlhttprequest-ssl": { + "version": "1.5.5" + }, + "yallist": { + "version": "3.1.1" + }, + "yaml": { + "version": "1.10.2" + }, + "yeast": { + "version": "0.1.2" + }, + "yn": { + "version": "3.1.1" + } } -} +} \ No newline at end of file diff --git a/package.json b/package.json index 4bf94258..50c467a1 100644 --- a/package.json +++ b/package.json @@ -5,8 +5,9 @@ "homepage": ".", "dependencies": { "@aws-sdk/client-s3": "^3.388.0", - "@emotion/react": "^11.7.0", - "@emotion/styled": "^11.6.0", + "@emotion/react": "^11.14.0", + "@emotion/styled": "^11.14.0", + "@ffmpeg/ffmpeg": "^0.9.8", "@fingerprintjs/fingerprintjs": "^4.2.2", "@mui/icons-material": "^5.2.5", "@mui/material": "^5.2.2", @@ -25,8 +26,12 @@ "eslint-plugin-import": "^2.28.0", "eslint-plugin-jsx-a11y": "^6.7.1", "faker": "^5.5.3", + "ffmpeg": "^0.0.4", "framer-motion": "^12.4.1", + "fuzzball": "^2.1.3", + "hoist-non-react-statics": "^3.3.2", "homophones": "^1.0.1", + "indicasr-wasm": "file:asr-utils/pkg", "jwt-decode": "^4.0.0", "lodash": "^4.17.21", "memoize-one": "^6.0.0", @@ -92,6 +97,8 @@ "@vitejs/plugin-react-swc": "^3.10.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", + "eslint-plugin-import": "^2.29.1", + "eslint-plugin-jsx-a11y": "^6.9.0", "eslint-plugin-prettier": "^3.4.0", "eslint-plugin-react": "^7.37.5", "eslint-plugin-react-hooks": "^5.2.0", @@ -99,7 +106,7 @@ "lint-staged": "^11.2.6", "prettier": "^2.8.8", "react": "^18.2.0", - "vite": "^6.3.5" + "vite": "^4.5.2" }, "lint-staged": { "src/**/*.{js,jsx}": [ diff --git a/public/models/cb.rnnn b/public/models/cb.rnnn new file mode 100644 index 00000000..bcbf6b56 --- /dev/null +++ b/public/models/cb.rnnn @@ -0,0 +1,22 @@ +rnnoise-nu model file version 1 +42 24 0 +-7 -20 -22 13 -4 -54 11 -9 -3 0 6 23 15 -20 -5 12 25 3 -22 18 -4 -18 -16 -14 -35 -14 -17 4 36 -42 -30 -21 19 -10 28 9 -4 6 -13 1 -6 -32 1 31 -49 14 19 0 -1 -35 -32 29 -26 -29 -99 -40 -39 13 -25 22 29 -15 -19 8 -33 52 55 44 -2 35 13 9 -55 54 -16 50 -57 60 -31 -20 -66 16 12 50 50 -8 -17 5 26 -51 29 -2 10 42 24 10 26 50 43 67 7 34 64 -12 -6 1 26 -1 28 22 50 7 29 55 41 37 28 -16 -32 -4 -69 -7 40 52 57 -17 58 -1 7 31 13 -48 47 -4 -9 5 -66 -59 57 -9 2 6 -12 20 -12 106 64 65 108 7 -86 65 123 110 -67 -86 107 18 -89 -56 92 94 86 -13 119 -63 -99 3 -1 8 -14 16 -106 40 -35 25 104 -24 -93 -28 51 -119 -125 104 127 -110 -35 -66 -38 7 39 -11 -24 127 65 15 99 -20 42 -6 127 -49 -116 -128 20 -119 -118 -96 126 121 -54 73 115 64 -20 118 -23 118 121 83 85 63 -120 122 63 -58 17 64 104 -58 -120 -1 61 -52 -54 -100 123 -47 -29 -6 21 30 53 -37 -18 -30 -120 36 -4 -6 9 -49 -19 3 27 -128 24 106 -94 4 77 -27 -36 -23 -28 -121 38 92 74 -32 19 35 -112 -37 104 -46 -51 120 -125 -81 -106 5 47 -57 121 0 83 -52 -64 -8 85 23 96 -50 118 71 -111 -84 58 -5 -35 -72 107 -6 83 127 -128 97 -64 48 -97 -13 -52 30 -46 87 73 72 56 10 -92 -39 -4 -128 -101 40 -118 10 32 -38 -6 106 -119 2 -34 -84 -75 -118 -119 -19 -90 -72 -110 -48 -37 -19 -98 -112 55 -99 76 -80 61 105 -111 0 -125 -87 -119 -122 -100 -119 -110 87 63 -5 -117 -101 -59 24 -26 -67 56 -112 83 -1 126 72 -127 127 -107 60 -119 -118 -101 23 26 49 84 -18 -119 -98 -78 127 -128 -128 -37 -122 -17 -55 109 -16 -94 -6 -112 80 -91 -13 -51 112 -78 114 10 109 38 -23 -52 -72 89 -63 -61 34 3 122 -93 1 -62 59 -114 -107 -128 -39 -45 73 56 76 121 74 -76 122 -33 37 31 58 -93 56 -13 -4 59 101 -82 -13 -112 -53 -84 -34 -118 -23 -18 -60 68 32 -112 -4 -47 105 -61 59 -66 -34 -128 -62 24 -22 -45 -63 -88 -61 20 42 -38 55 35 -128 46 -4 -55 -83 -127 -49 -76 -27 -78 127 -51 11 -47 27 88 119 30 122 -115 10 -54 127 32 -128 78 -127 -32 -92 127 88 -104 -125 61 -113 -22 5 84 -26 -54 78 -97 -24 113 -13 52 -49 -119 -13 -36 17 -75 -88 -48 -10 39 35 127 127 120 127 -25 -3 39 127 -16 -128 -120 -78 -13 -120 10 -41 2 -104 -31 -103 -68 94 -45 106 66 127 124 127 -44 -28 36 97 26 92 -101 -99 -95 -122 -114 107 -122 11 -102 -113 -14 102 -35 -6 22 -23 -56 65 -127 57 -14 91 0 102 -96 112 50 112 -110 -37 -94 37 15 -101 -17 -34 127 107 20 5 119 89 14 -46 -54 -67 -25 -39 84 -1 85 11 -78 73 -24 -5 -50 -126 -22 70 -12 -85 -5 84 19 -49 -59 4 -73 24 3 25 15 64 26 91 -47 -46 121 28 36 -84 49 38 -5 -20 -6 119 -84 74 82 3 -107 -81 67 -123 -20 -71 -18 16 113 -89 8 -128 -61 25 25 -1 25 48 -44 86 111 126 -67 18 106 -21 -26 41 71 -96 101 -37 -24 102 -9 68 -10 -13 -22 89 8 48 71 61 37 0 -119 -30 101 20 29 72 -27 -64 -117 1 56 -36 7 -98 75 -6 111 127 67 -51 -92 9 70 66 -66 97 80 -124 -72 67 56 -75 9 44 -5 13 -17 71 23 -57 47 5 28 -126 -15 -70 -107 64 -4 -31 -95 93 -109 17 -1 -6 -22 65 -24 -39 27 -57 -29 3 -36 10 63 18 71 70 11 -12 -14 117 -12 -93 71 0 10 47 -94 12 1 -34 0 36 -4 17 73 11 -36 -22 71 88 -73 -22 -82 -51 57 90 119 -84 6 2 117 -120 -120 -110 127 -128 127 -126 19 -128 127 127 121 116 -30 127 -53 -10 42 121 67 -32 39 -127 121 -120 -120 -21 127 -128 121 -122 -89 -128 127 60 121 -65 127 127 -5 38 11 121 57 -70 -125 -128 6 49 -42 121 -109 -19 49 -65 -120 22 -102 23 16 -108 88 -49 90 -44 -69 74 -21 -98 -85 -6 -14 -1 -86 115 -20 -28 127 0 12 -15 96 -26 -58 -4 39 -51 -25 -89 8 -9 8 -27 92 47 2 87 -72 98 -30 -35 122 -80 -9 8 24 11 12 -12 13 0 -30 -22 7 -33 -78 67 99 53 15 89 65 -100 34 38 -8 99 31 39 -19 78 -36 68 -65 -1 -67 35 -64 -68 -117 -21 -8 99 121 50 -47 106 -121 30 -89 61 65 -12 -49 -108 -57 -66 12 82 33 39 -9 28 49 49 12 19 76 51 -90 80 -61 -122 50 47 12 4 81 36 41 8 21 -26 55 15 -51 -16 -79 -1 -118 -100 +122 -52 -26 127 -107 124 81 61 -128 -5 -127 -118 43 54 -77 61 -128 -67 98 9 122 101 21 -44 +24 24 0 +113 -120 49 -37 121 83 34 -73 -124 83 -114 -128 -81 -112 18 -102 -52 -71 31 -45 -102 67 -107 -116 -15 -60 30 -51 121 -39 -56 -24 -14 -15 -25 -121 -80 68 -18 -33 -53 -75 84 -28 25 115 -43 -79 -13 31 19 26 -23 -23 11 108 18 54 61 29 -56 -33 -12 -43 -16 -11 -33 -5 -12 -46 25 5 -39 -35 0 58 16 65 61 127 -40 63 107 -18 -23 99 -71 -31 77 127 81 127 82 58 108 83 -66 -20 101 -35 -36 80 21 -17 126 -89 -122 61 36 -7 29 114 -9 9 88 11 31 -71 108 -14 54 69 -21 -124 -31 -9 -82 111 -35 13 26 -74 -11 90 -105 63 90 63 11 -96 121 2 -93 -33 117 49 -11 -15 65 -25 9 -21 -11 -17 -46 -29 -67 -23 105 -71 16 118 29 73 36 47 -30 120 -76 45 -10 -86 81 64 18 -41 43 -80 -39 14 37 -124 -89 107 -87 48 56 -48 58 -3 121 -119 -40 52 26 13 -54 33 -111 34 -97 19 -13 -4 13 123 -18 59 41 40 25 4 56 34 -44 -82 -36 -99 -4 -72 114 44 115 -15 -76 127 -90 -53 -63 27 -11 -42 3 -57 26 107 -13 38 122 -112 104 -71 101 -34 30 111 127 -50 35 -8 -120 77 40 91 120 124 18 42 35 -5 95 -100 -43 46 59 22 2 13 65 -13 -31 -35 14 -4 -3 -2 -8 31 45 -23 32 18 -18 36 -67 36 -52 30 94 -3 -121 99 -120 -33 42 -100 28 -77 -128 52 36 25 53 6 45 75 -120 -119 -76 63 -82 65 60 -25 -30 30 -5 34 -31 41 -128 27 57 51 -127 -118 -47 -31 -29 -82 -128 -86 -126 52 -38 -31 -11 -77 57 0 -18 19 62 20 95 -50 35 34 20 7 13 -72 2 54 -35 -1 -36 17 119 11 110 90 -80 -106 127 78 -85 50 14 51 11 -113 -21 4 -71 -2 -18 -125 41 127 30 -55 54 111 -29 54 93 -97 80 10 -25 33 10 8 -45 18 61 -8 -38 -28 -90 -31 119 -79 4 -37 71 -26 87 12 80 -38 23 -21 -33 -25 -57 -22 33 -43 -62 11 32 -7 31 50 -19 -57 6 24 -12 -63 127 -127 69 -119 60 81 -45 -124 -100 75 -52 -118 -74 -127 -47 73 37 -33 71 -122 -49 -104 -112 -53 -52 -103 -98 30 41 10 -38 46 19 -87 -121 -81 -97 35 -72 101 47 46 -44 31 66 121 -34 -34 57 -13 15 37 25 -68 31 -44 -48 58 17 39 9 40 -6 34 30 41 41 93 -57 -38 55 86 99 -113 108 -105 127 117 58 84 -106 123 -119 -122 -107 -112 -26 23 51 -17 122 119 -111 72 -30 -29 -53 -42 -31 48 6 -29 -18 -122 -58 -98 -23 -2 102 -40 20 39 -9 24 127 -8 80 -28 125 -41 78 27 -29 -115 -80 63 -67 32 -45 65 109 -9 -74 119 -84 76 127 116 36 -61 21 9 -78 64 13 -112 16 95 -127 -117 47 124 117 -66 0 -36 6 -9 53 117 -56 118 -2 90 80 41 -91 106 66 -10 66 29 -18 -47 64 55 -10 -39 44 101 -96 -93 -52 -18 -8 -20 -46 48 -63 -95 33 14 -32 -37 51 8 48 -25 78 54 -38 -27 0 75 48 67 -76 93 -39 -50 -10 1 -11 64 33 28 0 127 52 -4 -76 11 100 49 104 117 119 127 -2 112 -98 107 22 89 124 124 111 -119 116 36 80 74 40 24 -1 -65 -31 -56 -127 -27 119 75 91 43 16 -13 127 111 52 119 40 5 59 76 106 -65 -56 -8 14 41 -122 -5 -14 -60 11 -35 -59 51 16 21 47 -68 7 -54 41 15 -108 31 -12 -123 -35 68 -128 -55 -73 50 12 -81 29 61 -41 -9 43 -78 1 -34 -55 -59 -53 92 -10 -107 -14 6 -36 12 -14 8 90 31 -87 52 -27 83 -123 -95 -55 60 31 -115 -114 16 -18 4 14 15 -67 14 -30 43 -6 -61 12 -32 68 20 -96 7 -3 -58 28 -35 -27 -71 -18 9 -71 26 10 -20 1 -30 -59 93 -128 22 -28 1 -36 -29 25 20 116 -19 -40 -100 7 -74 -1 -2 -109 11 79 -48 56 46 10 1 -77 -15 -48 56 -75 21 7 55 -59 6 24 -113 52 30 -37 78 -62 32 34 55 -64 -63 -68 75 -29 -8 0 -81 -7 19 -6 89 11 23 98 -82 -111 -58 -3 61 -20 -29 -10 -6 -75 0 -3 -63 38 21 -34 98 -24 -15 -5 -88 -31 101 17 -24 42 -111 -7 -3 55 103 116 -10 38 20 -58 -39 -23 -57 5 92 -61 95 -84 -13 32 73 79 -50 48 -33 -26 32 -24 90 -107 70 -79 -45 13 33 -10 70 125 6 27 20 -44 20 -16 -7 72 -54 -32 -91 -24 -56 -4 2 71 -38 0 -112 -30 -34 19 93 -6 -23 -11 -30 -2 18 11 32 12 -71 -21 -95 64 1 -49 50 -52 103 30 38 70 -53 -24 53 -51 34 -23 24 116 64 12 1 36 -59 29 -103 83 -11 -5 13 115 -32 -71 -71 -28 46 -32 12 -28 -61 19 -10 58 52 10 28 -12 -24 -64 -65 4 15 -7 9 101 -62 -116 18 -63 -2 -72 -110 65 -123 -17 -100 34 -9 48 -9 58 -53 -73 -15 26 -86 -102 -49 23 28 46 12 -118 92 -55 -128 -10 -9 -53 -54 82 91 37 50 19 -95 110 51 97 12 0 -61 -20 127 -34 -72 -62 80 -79 -36 91 4 -5 -97 58 100 -32 52 44 -88 -60 -52 -65 27 43 -128 -20 -98 39 -121 15 -73 20 12 -51 33 -56 -100 57 -28 -52 -22 61 -86 51 50 98 -11 -119 5 -75 76 111 -103 -124 33 61 65 127 86 96 -37 -65 -42 21 53 127 66 100 -54 8 29 25 -128 -3 103 -11 -23 79 103 31 59 75 -29 57 41 127 88 4 -125 127 4 -83 -80 -35 24 -67 -127 -17 -120 -25 -45 16 19 -113 -99 84 120 127 -73 50 -38 -55 68 7 91 108 121 -77 110 91 119 124 64 18 -10 -61 3 -128 -81 127 4 19 -90 12 127 63 -61 25 59 75 -104 -51 75 87 -128 -40 5 65 -9 -61 -85 28 -5 -11 0 -29 -76 -3 -2 18 -53 -1 -5 19 7 4 30 -17 51 5 -21 -87 67 -70 82 8 -51 43 -117 -47 85 -91 104 -1 62 -91 -21 -76 -111 12 -120 16 -33 30 37 -7 35 -9 17 65 -1 -128 38 3 26 35 16 -10 64 -13 -42 -106 31 55 4 22 100 -50 -36 54 67 -2 -108 -82 83 -14 67 10 10 -54 -35 -85 67 15 24 16 99 3 -70 65 -115 -15 50 53 123 -109 -13 119 9 1 -118 -116 88 54 27 -8 -18 68 -120 -116 -117 -14 -95 -118 -119 32 -25 10 100 -11 -82 19 -28 -53 -24 58 -39 -17 -37 -113 43 49 -89 -111 50 67 -37 -36 109 58 -79 14 61 44 14 -40 -23 47 13 -38 23 -66 -2 -61 59 28 63 1 -44 20 -10 107 -102 14 -41 8 10 -19 27 -73 -122 20 -12 44 -47 -52 104 -37 107 -3 -58 -62 -31 -13 -119 97 102 54 -46 88 -66 25 26 -106 21 39 47 89 21 -12 -18 -30 34 -20 -8 34 -52 20 -80 -75 9 -128 32 -1 0 -8 62 24 44 64 -36 53 -6 -30 53 -38 -123 13 -57 -25 -30 -47 85 -81 25 36 -120 -35 47 25 -80 127 102 -52 -64 -101 104 47 -33 -17 2 94 -65 6 -2 24 40 -97 5 16 34 82 110 18 -56 84 64 63 16 19 -46 -29 -68 103 -9 32 46 -13 85 19 -33 77 32 73 -12 44 -34 -15 -78 -62 79 1 43 -43 59 31 23 -36 20 -63 -12 32 61 28 -3 24 50 5 4 -106 105 -31 -115 19 -42 -10 -120 17 -57 -126 -12 19 -104 14 -42 35 -49 -85 -56 -107 -119 -122 -91 6 -2 42 -74 54 72 -5 -33 -34 -47 -20 -63 -75 105 -25 20 -13 96 31 -125 5 34 -49 -13 -37 -28 -5 -91 -51 75 -14 10 -76 19 -53 -82 -67 107 -55 45 15 62 68 -27 12 -24 -90 61 76 25 33 67 93 44 -94 -120 115 71 12 12 3 -11 -20 -76 30 108 -56 -35 28 -12 -123 35 -96 -64 1 -113 62 127 106 -47 102 90 -68 -31 -87 -49 74 -7 -47 -45 -90 -14 -47 -78 69 -56 10 72 -24 36 21 -52 -80 -46 -67 95 -27 -21 22 36 13 96 -31 -48 -18 7 50 67 -26 -21 55 100 52 69 -61 -44 -31 12 82 121 72 115 -11 127 8 -6 6 93 52 97 126 -64 78 -5 15 94 37 -18 -114 -4 45 -128 12 -75 -50 100 37 27 -52 7 -31 123 95 73 -76 -110 92 -26 127 99 42 -111 51 -40 -120 49 -108 26 -11 -101 13 -54 -49 92 47 -54 23 2 26 103 -65 24 +-102 43 -24 -86 127 105 23 -26 -17 29 60 62 55 -42 24 9 -51 36 117 33 -27 58 51 40 -43 31 -36 -4 -28 7 -68 46 90 44 3 29 113 -14 25 -44 45 113 92 89 3 46 27 40 -8 19 -27 10 -110 8 25 -16 -13 127 64 -3 43 14 22 -8 -45 -81 -42 25 -36 28 -35 -2 -41 36 -72 -66 73 -99 -75 -65 -59 -120 98 21 127 29 -93 -122 75 -34 41 -13 2 58 -36 90 -57 56 -45 5 -20 -11 16 40 -60 -40 -44 -21 1 36 -31 2 56 -24 30 -20 -20 -46 21 12 -29 53 -113 -125 110 -21 -48 30 -64 -81 0 -59 -42 58 1 -33 -1 1 127 -86 97 38 -37 33 -98 41 -73 99 127 -112 117 -29 111 -115 -122 83 -87 54 101 29 -106 50 76 -51 21 106 31 56 -46 17 -41 -83 -7 -61 -91 60 100 35 -122 53 -8 -43 -31 -46 -14 52 74 30 72 99 -31 -79 9 -14 36 112 -98 23 89 -57 6 -48 85 54 38 -10 83 -33 -98 -54 -113 101 -56 8 96 -21 107 -127 24 28 -6 34 20 -110 67 105 -28 -94 -123 -36 2 -9 -103 -65 4 -59 2 35 7 -128 75 9 18 -7 55 102 33 54 77 -5 51 -10 -24 59 24 34 -84 -66 18 61 43 3 -94 -40 -36 57 -6 96 21 -38 97 -5 36 -23 -2 51 8 -29 32 -65 -113 -38 -71 0 -17 -66 -2 11 -127 -3 76 -128 112 127 -121 -21 -94 89 127 -73 -15 -119 127 -81 124 -84 -124 -68 -120 78 -19 -4 -93 -26 -91 16 58 -1 -120 76 -26 -123 3 -61 -64 107 -55 -7 -100 -52 80 -89 -67 80 -9 37 108 61 -18 -114 117 -22 76 111 -112 70 -26 -103 -107 111 -72 108 -9 109 81 -102 90 -114 -71 -10 -66 -21 117 -81 127 -11 -19 -88 12 -128 82 -106 0 -34 71 59 -128 -46 94 91 98 81 -128 19 18 28 -82 55 -25 -28 -67 -40 99 65 -41 38 97 -43 9 -9 -17 52 29 -10 106 -47 -45 44 -23 -79 21 45 -63 102 -12 -100 115 -13 108 27 70 -49 40 -84 25 -111 -75 84 -38 -19 93 -35 24 -72 82 -128 46 88 15 -58 -6 34 -66 -128 -46 -21 123 54 -45 -49 -48 -128 -107 -60 -112 -20 19 61 -17 8 67 -57 17 93 13 13 -27 94 45 16 46 34 -64 107 29 0 3 83 -52 76 -6 -77 -60 109 58 -56 38 -57 127 -45 46 63 123 -124 85 -115 -110 -104 -77 105 -71 -118 0 -17 -128 20 -82 -18 -6 -128 -35 -128 -96 -127 -76 80 -5 2 -70 -18 99 46 6 -105 6 19 90 118 -33 -117 -2 -17 36 -31 1 -41 16 -36 24 -42 -24 -8 9 36 81 31 -8 8 -73 23 36 28 7 -5 29 -106 13 -7 -21 104 -47 7 -66 -33 4 -8 -77 13 27 62 -14 -9 26 91 -79 124 18 -11 107 15 -85 14 106 -12 127 15 -43 -37 -75 50 66 94 -52 -50 -90 -53 5 -22 -96 -127 94 3 120 24 -40 -22 76 79 -11 122 -1 41 -9 37 27 7 -11 -21 46 72 -27 -63 -34 45 -7 -123 -22 86 6 75 -56 -85 116 32 0 117 78 -12 9 4 -81 -79 -51 50 -84 -88 22 8 -105 6 57 -114 127 105 8 -70 -4 -40 46 -101 11 -35 95 61 -128 -105 123 119 2 86 -71 -4 -8 49 42 -120 58 76 99 11 66 79 -7 -13 50 9 80 108 -3 23 92 61 118 44 13 25 -51 -62 30 46 20 43 24 -70 44 46 48 59 49 -29 25 -39 -86 -112 -64 47 6 -34 -13 -117 8 -123 123 76 127 117 56 120 60 114 105 4 22 -70 119 63 -126 -86 121 113 -1 18 45 -62 13 -25 -74 -16 3 35 -83 -35 17 -17 33 11 19 -41 -70 -9 -84 -106 32 12 49 39 -14 -67 -33 -74 43 116 88 -63 -30 -128 62 -6 127 21 -7 -45 29 -1 16 -48 -86 127 -125 -35 31 -109 34 -29 87 107 55 90 127 68 127 64 -103 49 -126 54 98 106 22 71 -111 -41 56 48 87 -1 17 38 5 -10 19 33 77 23 74 54 41 88 28 8 -15 42 -30 16 11 77 100 25 -56 -15 -2 -128 -5 125 29 -20 50 -48 109 42 43 78 43 -63 -27 -87 -126 -111 -62 70 -114 -111 87 -60 48 45 46 127 -19 45 127 127 127 -6 -9 118 -33 110 125 127 -38 127 -23 105 116 95 118 -53 -7 20 58 15 10 36 36 96 115 28 4 95 2 -14 6 15 -84 -13 -12 88 16 -87 -23 30 -44 -116 -8 127 -34 -58 -10 -6 64 -103 23 87 127 -16 -65 79 -102 -127 -127 0 -73 -110 35 -91 -27 -121 1 -126 24 114 69 42 69 19 5 -127 -45 41 35 93 -69 53 126 127 7 -104 80 -14 42 11 33 -37 48 23 -70 2 -54 23 119 4 67 -55 -24 25 86 -8 -32 -17 -15 2 100 -74 -10 65 10 3 11 -27 -51 49 -50 0 -85 -92 -127 89 -110 121 79 69 59 -122 -11 0 -102 127 90 -13 77 -128 45 72 -28 -75 66 98 -5 -110 -3 -31 127 127 -94 -107 34 -30 -70 -79 -110 -25 -23 55 13 -87 -1 7 -8 10 51 9 -104 91 35 23 88 17 -19 112 96 7 20 1 -120 -90 -19 -73 -11 104 122 10 71 -73 123 -18 47 101 115 -33 84 -71 -99 -120 -36 125 -73 1 81 -68 -17 -5 -71 115 25 3 -39 50 -9 -53 -6 24 80 59 -62 -125 71 56 86 127 48 87 127 -6 -79 -54 -32 -98 -35 47 -31 -26 28 -45 12 -2 -71 34 8 -11 -23 -45 10 -34 -17 11 59 -35 23 123 -55 -70 -87 78 -96 100 -121 61 28 -19 -49 89 -93 94 64 39 46 -72 86 9 -41 56 -98 -89 -38 -118 -75 -85 -116 -128 -116 -60 -27 -35 59 -99 -74 -102 -41 -5 88 -24 -118 -94 -127 63 -15 -39 -84 13 -11 -26 -23 -29 -29 -20 -36 11 -13 -7 41 91 72 -28 -8 -17 -28 10 -70 44 115 12 117 -35 -12 113 44 -91 -25 103 101 -76 -58 -69 95 -30 49 60 68 16 39 68 -68 85 -119 -108 -22 -128 66 37 -115 -128 -105 -53 -28 -109 -30 -101 -57 -104 56 -110 53 63 -94 -118 -78 53 16 -28 -70 76 27 11 -66 0 6 -45 -110 -83 -58 -19 -34 17 32 6 11 -93 -67 49 -41 33 72 32 37 -127 66 -29 11 89 -104 33 -102 -72 -124 2 103 -21 127 127 49 21 56 55 -81 94 -123 124 -110 -91 -38 -23 -56 -57 -117 -127 122 17 88 48 -84 -99 103 -26 -63 -112 -13 -48 -95 99 -52 90 -1 -2 -37 -119 -12 55 89 -103 6 -15 3 107 -16 -116 -70 14 22 86 12 -16 67 96 -87 127 -118 -121 68 -127 -46 116 -90 -118 -124 -122 -48 92 -66 -3 79 127 82 -110 116 44 -50 52 120 -123 61 -115 77 118 68 119 54 126 80 -101 -72 -76 109 76 -103 -73 -4 43 -58 11 -50 -119 70 26 -50 111 13 71 -15 -16 28 65 -5 48 -31 20 37 46 37 -9 -11 41 1 10 -47 -20 13 -119 18 94 -16 8 103 -114 6 -28 78 118 75 -6 72 14 -38 -42 -126 66 -85 -126 110 -127 -70 104 -86 -34 -5 -116 -75 -52 -128 -45 64 1 86 75 -128 -27 40 59 78 30 -9 -46 15 118 -26 3 29 1 0 -72 -79 32 -50 -88 -1 -77 11 -42 -12 -1 -11 20 -66 5 -83 51 117 -1 104 93 9 -126 -54 -67 -63 49 -81 -2 -89 -64 -110 5 -32 -33 109 91 85 -128 36 111 -49 122 -33 20 -99 26 -4 -57 -72 -91 -86 -127 -72 -3 107 -18 -125 -17 95 113 31 3 -71 -13 -105 20 -33 -23 -84 -13 -81 22 65 -90 -62 -11 70 -78 -71 -65 -61 -69 50 -30 -44 -64 -93 -42 4 8 -87 14 -64 92 46 -18 75 -118 75 -92 31 11 70 6 86 -61 -31 -109 64 41 -106 0 -1 -121 24 94 -85 127 -5 -8 0 76 77 -41 -128 72 -72 83 4 23 -55 -30 -123 -120 5 92 89 19 26 41 -51 -6 -39 9 -53 -53 -23 52 -57 70 2 -58 -123 -45 -76 -85 -52 4 -41 91 30 3 -128 -84 -42 127 -47 -25 59 -51 38 -119 -30 127 84 -108 -1 -72 -45 -85 -118 86 -29 -75 73 -88 -63 -53 -54 -22 -59 -70 -107 -126 -79 -12 -85 -88 115 -26 -128 -107 105 16 45 -105 -121 -119 -93 123 -2 -47 38 -1 27 8 -68 -10 -43 4 24 -76 -51 3 48 -38 35 26 -47 -55 -61 50 27 65 65 26 29 -100 -36 97 -28 0 -63 109 -73 -127 -35 39 -25 31 -11 98 66 -39 55 -70 -91 57 +-78 -70 122 -124 127 119 -107 -72 -88 117 127 -128 12 -102 35 -50 -22 -112 76 119 -80 -99 -104 -92 10 34 53 -24 72 92 57 0 -10 13 63 28 127 28 113 83 37 19 127 47 79 -28 55 46 44 -11 -4 59 53 4 50 -53 19 78 62 25 -48 -15 42 -31 -69 8 29 13 -20 -43 10 -36 +90 48 2 +0 48 -94 -16 -92 -34 12 5 1 -9 37 63 18 21 49 -39 8 59 -41 15 5 47 15 26 -2 36 -16 6 55 -12 45 -44 -14 -74 0 6 106 -4 -11 -19 -59 -30 12 -38 -36 46 27 -10 -53 5 -2 -21 13 22 65 -4 36 -7 59 -44 -10 36 -21 11 24 14 -14 -40 -29 -11 21 7 75 11 19 15 -2 24 -11 44 -4 -11 12 17 67 -9 -73 -2 44 11 36 25 17 -17 24 -20 9 -41 -2 18 -33 15 12 41 27 3 -25 13 49 -27 -25 -42 29 -9 -17 -25 49 0 -17 21 -69 5 73 51 10 -26 9 -9 -12 1 -10 -8 -1 -2 14 43 9 19 45 -53 31 18 -22 22 73 -100 89 -6 65 28 -36 70 -20 -4 -24 -47 114 54 109 33 7 40 56 -25 -15 77 -26 -17 72 48 -115 0 -53 8 5 -46 47 53 -48 -46 10 11 63 4 86 56 26 84 -74 60 32 31 -22 -53 -38 76 56 7 -68 47 19 -8 -52 59 9 -41 49 -33 62 -19 -50 2 35 -49 11 21 18 43 110 -10 70 -20 43 -2 70 13 -10 -62 -98 75 5 -8 -35 52 23 7 -107 29 1 36 -42 -27 13 37 -5 19 -1 -4 -38 -106 31 30 39 26 9 10 31 -11 15 -8 -5 43 31 13 11 -39 64 66 32 -3 -2 -33 -33 26 -42 -49 -49 -38 12 2 -28 -6 -27 -113 -27 22 -21 30 44 56 25 29 44 -82 -15 -47 -55 52 -49 -15 -31 25 -29 84 -6 99 63 42 -20 36 -57 -24 -10 -14 -41 42 45 -24 6 -47 25 -25 43 -21 -36 -110 -70 7 -20 -95 -8 34 -71 73 -76 -5 -58 -9 -43 7 -9 -24 65 44 71 50 102 81 -7 -72 -7 5 -65 -28 12 54 30 57 -13 -19 21 63 91 -42 23 -8 -42 -50 50 -27 36 41 66 -5 61 49 -9 55 47 38 3 0 -11 -79 41 -10 -55 46 1 37 -48 -4 56 -30 12 53 -33 5 -28 36 -27 37 26 27 8 -4 6 20 -20 19 6 -7 14 -13 -5 -46 5 28 28 -22 78 -21 13 11 -39 -7 44 -26 -15 0 -16 3 56 -34 127 -28 68 -41 44 -71 -10 15 -11 -28 20 74 77 43 6 59 20 -46 9 58 -59 65 -4 6 -23 -20 -26 9 -26 -36 29 -70 30 52 18 86 -26 40 19 23 37 92 -53 66 33 10 15 47 6 68 30 14 -5 2 32 -34 -25 -51 1 -64 -53 8 28 -29 22 -100 -22 -32 -87 31 11 -11 29 35 27 -91 -12 95 -41 -49 12 -45 -73 47 8 24 -43 76 105 -17 -123 18 -83 51 -22 6 -2 55 -36 18 35 -13 -5 18 27 -32 50 12 -16 63 0 28 18 17 21 10 -11 30 -6 -1 23 9 8 -28 25 -57 16 19 33 -12 45 3 10 19 37 -10 -41 -61 -3 5 2 1 -49 9 -25 34 -67 4 -10 -6 59 26 -70 -128 5 -36 -76 -31 -39 18 -56 27 -3 -21 10 52 -38 -5 34 -14 25 -40 -48 4 -51 -13 -21 -53 -95 -9 16 -22 50 -32 -40 -123 0 -40 -10 27 4 57 95 14 -16 -2 43 -31 -6 -82 13 12 71 15 -57 73 66 14 -49 -5 -46 -39 -10 -34 -54 -15 -30 7 20 3 -3 -15 51 -9 64 21 6 -23 -52 -8 54 18 -39 41 51 -33 13 7 44 -22 -21 -28 -5 33 12 -18 40 13 18 -29 -22 -34 -11 -14 -38 -31 -31 39 -19 30 -36 -25 31 8 19 -4 24 22 5 20 -18 -3 -3 10 92 -15 19 10 34 -9 21 82 27 -35 -15 -9 14 -37 -7 45 49 48 -5 29 9 -32 16 7 -24 1 33 -31 65 50 6 23 -3 22 32 13 19 31 -89 -40 63 -26 -45 1 32 51 -37 -4 78 8 2 17 -37 -2 -12 87 -13 12 25 8 -26 14 14 -32 0 8 -9 38 -8 -1 -4 58 55 -90 73 78 28 -38 -54 -53 71 63 -23 33 -1 4 30 -20 61 27 -32 43 37 -57 -12 -112 8 4 18 -61 7 -74 0 -23 -10 41 -6 -28 -25 13 11 1 15 -19 -9 -15 -16 -27 -13 19 -3 27 -52 -39 30 31 -28 20 68 -5 26 -2 -10 13 7 36 13 8 -9 -17 -9 29 48 7 22 7 -36 23 -23 -6 -13 -4 13 -8 -23 -15 -5 -46 -74 -15 -8 40 8 -31 28 -6 72 92 -81 -46 18 -34 52 13 6 0 47 -39 9 31 34 -5 54 20 48 -35 -127 -33 14 45 -44 -21 -65 52 -48 55 -48 -38 52 -29 -9 22 -49 -8 -63 15 -12 4 -83 46 -3 -21 -13 18 -7 -111 23 -14 23 74 3 72 -40 -29 64 -5 -24 -67 76 -36 123 1 25 40 10 -4 27 -61 -15 -116 49 -20 -16 2 17 32 16 6 -37 -68 -30 -57 -30 -3 3 -29 -68 -19 64 9 14 -9 50 -26 -34 0 -36 -25 15 -24 46 -22 20 -42 -57 2 -70 -2 3 -52 -34 23 -24 16 13 -18 19 51 -18 -9 -9 -10 -2 -12 13 30 32 -8 -13 31 0 -103 10 12 123 -57 -114 24 -72 -1 55 17 48 7 98 41 14 62 108 8 -33 9 -20 13 99 -10 -21 3 37 -12 14 -18 6 43 -77 -18 -35 -59 5 55 30 52 81 113 -38 -49 70 -53 -9 -35 8 -87 36 -85 15 17 5 -34 -2 -80 -15 -22 -80 -19 11 5 -22 -47 6 53 30 14 63 60 14 -3 30 -18 -11 -99 8 -43 60 -27 120 25 -37 17 2 18 126 73 -40 -39 -17 27 3 -44 37 -18 62 31 23 -41 -49 -38 14 20 70 -7 -2 -24 -63 3 28 29 33 55 -10 -7 -40 7 72 -15 -23 -30 22 -1 7 75 19 -7 52 52 11 -4 1 -30 40 104 -27 46 -31 -17 -19 -30 -30 -54 -51 11 -97 -78 23 -16 -42 6 33 9 79 -15 -31 92 20 8 117 -50 -2 29 9 10 -79 31 -46 14 47 -2 -23 84 -11 -66 -86 -13 45 45 10 36 27 -14 38 20 -76 25 -43 15 19 -64 21 28 8 45 29 33 -6 -70 -71 -81 -79 71 18 13 -15 22 -88 -48 90 45 56 -16 29 -5 12 -17 32 -47 -28 -11 2 -15 -61 -41 42 45 65 -59 21 6 -17 -31 44 -32 -35 -21 35 -26 -23 39 -40 -16 -14 44 7 0 -34 -4 41 35 32 32 -24 -34 -24 17 22 -19 61 7 -79 -21 7 39 8 20 -50 -9 1 -58 23 2 12 1 18 -59 -28 -17 -24 -73 -29 -67 -11 8 33 -114 26 -28 -13 68 -72 101 -49 51 50 17 67 27 20 -60 -6 -1 76 -2 7 49 44 21 -22 -20 -25 62 -96 -61 68 4 17 -56 -25 -2 13 23 30 2 18 -2 -14 53 -15 51 -75 0 -36 -1 124 -49 97 -48 -50 -26 -31 -5 -11 -39 54 -34 -31 -21 50 -1 -30 114 -44 -37 -29 34 -117 -19 -22 22 -75 -1 6 11 50 12 -31 -1 -43 77 -72 51 102 26 11 -48 -30 80 51 -81 14 -23 64 52 44 -75 5 -105 -8 65 -7 53 41 25 -37 -13 46 -26 -3 -7 -23 -77 64 69 1 88 -25 -70 40 21 -36 44 2 -18 -30 -5 -8 -15 -4 119 48 -77 24 -5 55 -34 22 -2 15 -44 15 -7 -4 -22 -1 34 -19 -10 77 42 -122 4 -32 54 -39 20 18 -27 13 -13 17 -32 99 -3 -21 36 -21 54 -40 -54 32 6 -83 -39 45 15 9 8 -22 -54 34 6 2 2 17 11 37 29 30 24 52 -37 -44 38 -39 -84 -60 26 -22 6 -39 56 -50 54 18 -73 2 -18 -2 -59 -13 -27 -2 -41 1 62 -5 15 -46 -2 20 -10 -39 -27 3 5 -46 -24 -43 -10 -3 47 34 32 -15 -17 15 30 2 11 -9 16 -18 -25 -4 8 -10 9 -14 -29 14 -49 -27 -18 23 19 7 9 -22 -29 -23 -26 2 38 2 9 11 9 6 -44 5 -6 29 -35 -11 47 13 16 -18 30 22 66 41 -18 -18 -3 -23 28 -15 -8 -4 -21 10 40 21 -28 17 -38 -27 -14 56 -34 7 -46 -12 -41 33 -28 -20 -34 53 47 36 -24 -8 27 -30 -31 2 0 50 45 -10 -15 -14 4 -39 -25 -76 -6 54 51 -31 -23 38 -20 -44 5 -36 40 -85 1 9 45 4 -23 -84 63 -2 21 80 -15 -4 2 3 -25 -45 -33 -33 -33 -20 29 -55 29 -8 13 11 18 -27 -104 -19 -58 -26 -57 42 47 -25 25 -9 -25 19 44 -26 11 1 21 24 -8 0 15 19 26 -33 4 6 11 -52 0 -3 11 24 49 -29 12 -18 20 -52 30 -8 27 -14 -14 -6 3 0 19 20 -12 -1 -6 0 -9 -12 -10 -20 -88 -72 35 11 23 56 17 22 -64 -58 -94 2 -94 -5 -23 10 -82 -70 -15 -71 112 12 -92 -1 25 -23 -61 -21 22 18 -5 30 -93 -5 33 5 7 2 -73 65 44 -6 -5 31 11 24 -28 -10 -50 -42 26 -22 -20 -96 50 82 -29 -116 -2 -44 3 21 -75 96 -31 -28 -46 -23 -65 43 -23 83 19 47 -7 -31 -93 27 53 -69 53 38 -48 -84 -35 -45 -28 77 -85 14 -14 5 22 -24 17 21 -14 2 10 20 -10 -61 6 -63 1 6 22 -58 -12 -22 59 7 -54 -46 -31 -58 -16 -36 57 24 3 -40 -18 34 16 27 -53 3 1 -38 -49 21 -8 -57 -50 21 -16 -51 101 20 45 17 46 23 21 3 -18 -25 -9 18 78 -27 37 -42 -40 15 -13 -28 -46 -6 19 -109 59 45 -49 0 -38 -52 17 -55 -25 -18 69 -25 -14 14 -83 -23 -10 -27 -115 -9 34 59 -26 -1 32 86 60 -82 -28 -19 8 -25 3 -4 -58 1 -10 49 25 -67 29 -119 35 -60 18 23 14 -14 -53 31 -8 -23 20 -23 -37 22 7 -36 -51 9 42 13 -44 -39 -48 -66 12 -64 52 7 78 -29 -44 23 -19 -55 12 -25 -11 12 18 -5 -26 -19 29 9 -17 14 -4 -51 5 -26 22 32 -10 6 -24 9 -5 41 102 -5 -16 -76 -15 -25 24 -19 -29 -24 -15 -18 -23 75 -68 -27 -14 -17 -4 18 -30 60 -5 4 2 -34 53 -71 35 39 -8 53 37 -32 -7 7 -100 9 31 -14 -3 -59 77 -124 15 -30 -16 13 -91 -35 -1 -16 33 -82 25 -78 53 -66 -68 -107 -11 35 -77 -74 -62 -91 -4 -48 96 6 -102 3 31 -75 14 -40 -58 114 50 55 -62 -23 -34 4 -24 122 13 23 20 25 35 -110 23 -89 -15 -15 10 -27 31 -48 126 91 -46 -62 82 -61 48 31 34 66 -10 -70 -24 3 -31 -73 -15 -37 -64 45 89 42 64 -36 74 32 73 -8 8 -13 18 -95 6 -97 52 -15 8 45 -32 -39 -9 -31 23 1 88 24 -26 -70 -43 -21 8 20 -6 10 86 8 -34 -97 -8 -46 -47 -19 2 37 26 25 54 72 35 -37 -14 -19 -61 -2 -56 47 -30 31 4 11 -84 12 20 -128 71 -8 1 -122 -16 -88 39 8 -49 -44 29 2 71 68 -29 -84 4 23 -3 -41 78 52 -76 -1 -49 52 -45 -41 31 90 -71 20 -14 40 -29 -16 55 -77 32 -48 98 -5 3 19 59 -23 -12 4 -13 -2 -38 -47 67 92 -22 -12 -13 64 97 -7 -17 95 45 23 3 -120 9 53 -14 -36 43 94 1 117 68 3 -14 29 -18 -28 -10 -11 2 -37 27 5 6 29 -2 5 -2 36 -37 -15 -30 -65 -46 -15 -12 -102 47 -36 -25 8 43 -45 49 -2 -40 -2 57 -86 34 -6 21 -15 -55 31 -20 -66 47 23 85 -31 -1 64 17 -72 18 57 23 50 11 80 22 -12 -5 55 13 55 18 68 27 16 43 -57 32 58 9 46 20 5 44 31 -5 12 15 12 -16 -89 58 31 87 -47 -46 -39 -3 21 16 -4 28 52 9 -35 3 40 -24 -47 18 -20 20 -47 17 -21 0 -22 -10 14 -5 29 -19 41 24 46 -16 -38 -13 35 -63 56 14 57 25 -71 -48 -20 7 -1 -5 77 24 -56 -3 -21 0 62 19 -26 -93 -26 -4 -39 5 -34 -59 -20 2 36 -6 20 58 -26 8 -13 -3 -6 0 -7 -8 35 28 -24 55 41 -58 -25 6 8 1 48 8 -9 -17 -33 -19 -18 33 -16 10 21 -16 -10 4 -28 8 59 1 -27 70 -30 13 -3 -27 -29 44 -23 -19 -54 -8 -4 -13 -27 20 20 21 -15 29 -23 45 -22 8 -48 52 70 -17 -1 14 23 -1 -38 56 -58 -21 37 20 1 -80 44 -64 112 14 -36 30 31 -20 -63 68 -58 11 107 -7 44 25 -90 -44 -23 -7 4 -51 33 73 16 17 41 -15 -3 20 18 47 5 -55 34 39 -52 57 69 -103 -26 -10 -108 29 88 8 100 -29 43 -66 50 8 9 49 20 11 40 48 56 75 3 58 20 -38 16 -24 27 45 19 0 3 -13 8 -3 1 -6 51 -13 -43 -42 29 -44 12 39 -6 -35 -45 -40 18 -11 41 1 83 29 15 -4 14 18 -25 -17 1 -31 -56 -59 54 20 23 19 26 -9 -30 36 18 -21 -42 36 -3 67 -61 -37 51 -32 -49 -39 -4 20 52 48 -82 39 39 -25 25 -69 -58 -37 54 11 79 113 31 13 -52 -41 -9 -4 -27 -69 11 6 -40 -31 30 51 82 -16 44 25 -75 -14 -18 -12 -22 22 -11 34 -37 85 0 54 0 -4 -37 8 7 -22 -6 -27 45 -20 -16 -45 9 39 -13 3 32 -31 18 62 -49 -13 12 50 52 -56 -37 19 43 32 36 -12 7 15 45 59 10 -30 27 8 -19 -60 21 -9 18 17 -14 10 -26 12 -30 -45 15 -41 -58 -43 -7 15 -10 13 0 -31 -2 21 -46 18 -15 -20 -25 -30 -8 -6 31 4 -2 8 -50 46 45 -3 66 -13 16 18 -22 56 36 34 -13 -1 41 -49 -18 -45 -69 -9 6 -46 -56 -1 69 -30 -17 -56 37 38 62 49 114 14 95 5 -45 23 127 6 12 -13 -89 49 2 68 30 -69 40 -47 -40 -10 28 42 -25 3 -60 78 -122 -9 -16 23 -40 86 46 22 37 59 -32 63 71 14 38 -37 35 -16 24 -89 23 119 4 -39 24 -20 -123 -42 9 -7 -59 -32 -56 -14 -17 -29 15 71 10 -12 -22 20 89 3 -47 8 10 20 32 -37 19 17 26 16 -26 7 16 2 -54 5 -44 -19 -25 6 -23 -52 41 3 -10 25 -11 9 -23 15 51 -24 17 -49 -28 -57 -16 -38 -64 -41 -8 28 -48 15 -37 7 21 10 -20 -26 -11 7 57 -28 22 4 79 -4 -50 -25 43 -88 -29 47 -72 -57 23 13 -12 -16 -48 81 -78 7 -5 7 -89 -53 80 -94 -35 -11 35 -60 -40 27 53 41 3 -51 -59 -14 -38 75 0 8 91 -50 26 -58 -58 6 -16 4 -25 -24 28 10 4 127 48 -5 7 -7 71 -27 55 14 77 79 -49 -14 17 67 -23 -25 16 -2 -10 -2 54 -9 86 -32 28 -1 12 -25 -26 12 6 26 42 50 -58 13 50 -21 -19 18 36 -7 -37 38 14 4 5 49 -3 -20 -21 -41 -9 -15 37 -45 -12 20 -27 14 -54 5 20 53 21 22 -2 -29 9 -6 5 -61 3 15 33 74 25 -16 41 33 19 -5 -22 31 20 27 23 5 -34 -52 -9 23 101 -2 -2 5 -42 51 58 -29 38 35 -68 11 118 -8 52 -36 -28 31 -1 -19 -28 8 79 -47 25 -43 0 12 57 -18 -35 -103 -96 45 -40 19 -35 -68 69 106 31 15 40 24 -22 -1 26 -4 33 -32 26 46 -25 1 -83 4 47 -27 -14 -61 43 6 -3 -6 -14 -40 24 -9 -1 -23 51 -6 -37 12 -46 16 -29 -50 17 47 4 8 -29 -31 44 -40 -23 -29 -14 -55 -35 25 4 -53 32 20 -12 -48 37 -21 40 -5 -54 -5 11 12 63 27 10 4 -64 -9 -62 -42 14 -19 10 -13 3 11 1 -13 -17 67 -26 -27 10 12 32 -14 -7 -69 48 -33 -40 47 118 -6 34 36 11 25 -55 0 30 63 -33 -16 14 10 -26 -15 39 -19 51 -6 44 11 -20 40 27 30 21 63 52 5 -57 12 13 -6 19 68 50 -45 42 0 13 -17 35 2 3 -14 -40 -13 2 -25 17 43 -42 -25 -27 -15 -18 0 29 4 -59 69 -10 27 17 -8 33 -4 37 -50 5 -47 23 0 -50 27 -32 27 39 40 -72 -16 27 114 -5 -14 65 -53 -10 65 10 -35 13 12 53 10 2 54 -4 -33 -41 -42 -29 -11 61 23 -2 -36 32 0 -34 -31 44 -15 -25 -4 -7 4 -43 10 -17 -4 17 -11 4 35 -5 -7 13 -10 -13 17 47 -7 50 -10 -24 -42 -11 -16 -34 2 -35 -5 -1 -10 76 9 102 -29 -27 -10 0 0 54 10 -104 80 89 -56 67 -12 117 -40 21 29 -48 80 20 -69 22 29 31 -2 120 -84 61 2 -48 31 62 55 38 55 1 69 62 70 -54 27 65 -103 55 18 9 32 68 1 -17 25 12 64 -56 -14 40 -36 -5 -27 70 3 94 -38 -67 49 -39 -13 -19 -31 -57 -67 -28 59 -45 23 46 -66 -25 55 -56 27 51 47 2 72 119 -13 -6 51 14 5 42 -16 50 -67 16 28 -2 -70 16 5 63 -38 3 15 78 -11 -97 4 38 17 26 0 -37 -97 -44 23 2 89 -42 -39 9 -31 -45 -30 -40 -27 -29 14 -18 -25 -36 -50 55 -19 -23 -12 5 -79 52 -4 -57 7 -24 -11 97 -16 -15 9 -21 -37 1 7 -11 22 0 -29 -18 -27 -46 14 1 7 -11 -9 -17 23 -15 5 -51 -30 15 -21 -22 10 -11 15 0 28 51 26 -18 7 -6 -27 22 -75 1 -49 37 13 -13 49 -13 15 13 18 33 1 82 24 13 68 8 5 45 -27 39 28 -16 -17 0 20 53 8 0 17 31 -15 20 0 -35 -36 36 -38 -13 -7 -9 60 34 38 6 49 4 21 17 -1 5 33 -45 2 5 -24 -29 -16 29 28 -15 21 -2 23 -4 -25 -8 7 -19 -1 -47 -19 12 21 16 -39 -7 -4 9 -22 -12 -20 -13 11 -4 -9 -12 -10 -15 9 -8 17 42 12 -2 30 -27 -11 -6 -19 -18 -41 9 12 -34 -10 -47 0 -10 -35 7 25 -61 -10 -82 -9 -15 18 -51 4 -21 8 31 -27 -4 79 13 -11 36 9 -47 39 32 22 36 34 20 19 17 -64 47 -17 19 10 -70 36 25 3 0 2 -12 33 -55 -16 -7 35 0 -17 11 28 55 -33 57 21 43 -41 -4 25 11 -2 4 12 -25 39 -29 31 9 23 -39 -9 -17 -2 16 -8 8 -57 -42 45 23 15 -29 23 -7 34 25 6 -41 1 7 31 -4 1 -13 26 -5 -9 34 2 7 -28 -41 -2 4 -21 -33 -33 30 -7 9 15 66 19 17 -32 -25 2 -30 -12 -28 -55 -29 8 -40 10 10 3 -44 5 -38 -8 -22 35 -46 6 -16 28 33 -4 -61 -3 -59 -3 -89 -2 -32 -33 -38 56 -64 -14 -10 77 -31 -8 -38 68 -78 27 25 65 35 -41 -98 99 -83 -2 -19 0 1 -6 -7 7 15 -36 -63 100 -7 -57 6 -70 11 -29 -7 43 63 7 69 91 9 39 7 -71 13 8 6 -64 34 -46 -105 -29 -17 -49 -20 54 43 19 59 29 61 -1 27 1 -9 37 2 14 -2 34 -20 56 -43 15 -46 32 34 -65 5 -2 -11 -8 13 12 39 26 30 37 23 -58 70 57 -62 -10 -22 2 -23 31 30 23 48 -24 6 -41 -3 -10 -17 -45 5 -23 0 -33 -43 23 43 29 15 -12 -2 12 49 19 6 40 8 0 1 10 31 -18 -39 38 -47 14 -43 -32 -29 23 -24 5 -20 24 -27 21 -42 -12 50 29 25 -38 2 19 -28 -9 -21 10 -8 -2 -18 -23 -31 4 -21 20 15 32 -49 -47 4 11 40 18 -16 -40 10 34 26 -8 -1 15 -9 9 35 -2 -25 12 -24 -37 -38 31 -35 -13 -83 20 -48 23 -40 -16 -32 -28 43 -38 44 -19 -21 -25 -26 -27 15 19 23 -6 23 -19 18 -4 65 -27 9 46 -32 -33 -10 -38 44 24 -20 -7 -12 39 -32 -23 42 -10 50 21 11 1 13 -24 12 16 40 32 -6 -8 8 -19 -3 5 -21 -39 18 -42 -24 -17 -49 -5 -5 -30 9 -1 -2 -1 -21 -14 -29 9 19 -14 51 39 76 -2 -57 57 20 -62 106 42 8 22 89 103 37 -1 -14 25 53 105 25 30 -22 -10 5 58 -91 6 70 -45 -64 91 106 5 33 42 -11 -101 51 -45 62 16 -38 -23 62 77 -35 -38 83 5 0 -29 -30 -15 -79 36 -30 -79 -42 -10 -45 -16 30 -37 62 39 -86 56 -56 18 -20 -13 45 74 -66 1 46 -19 -8 -58 -58 27 94 -70 -49 -3 36 -16 -20 5 27 48 21 -85 3 -34 10 -23 -12 -12 -36 25 4 -15 -5 14 -14 -26 -58 -37 -25 11 57 -12 -10 19 -21 -23 -5 -51 21 38 -22 4 113 -8 -8 0 94 41 -20 5 -56 30 -15 22 -11 -43 -48 -14 -76 -3 20 -50 -55 22 -25 -111 30 11 99 8 -57 34 -31 30 -84 -40 33 -26 38 -42 -24 33 -81 -6 -53 53 61 47 -5 12 40 33 32 93 -36 -10 -34 24 -11 77 67 31 47 -20 16 28 -18 26 72 56 0 4 -3 -69 -13 -30 -20 -8 -13 -17 53 1 -66 -7 6 -94 -37 -82 43 48 85 -52 43 8 18 -38 -45 -29 -20 -28 -61 -26 74 11 -18 -21 -1 6 -1 58 -43 28 -42 23 90 21 4 -4 27 -35 46 5 -7 25 -4 -63 -72 -5 -38 44 79 20 -3 -33 16 -51 0 54 -13 26 -20 41 -37 -46 -15 12 9 3 18 21 -10 -13 -29 46 -27 -20 -30 -28 47 -20 -6 0 39 -8 -9 53 -45 43 38 9 44 3 11 -4 26 0 8 1 -29 41 41 36 1 22 -88 -1 -31 1 -30 -96 24 39 -47 -68 -2 -12 5 10 -27 15 -50 -42 -25 -5 33 36 -3 51 15 3 26 15 -17 7 49 -5 -4 -29 -13 41 -83 4 -16 19 -13 -7 -37 -24 -49 10 22 -16 -23 13 -32 -94 29 -54 -24 -1 70 55 -12 11 10 7 -22 31 4 -59 12 -64 -39 -6 18 -27 0 32 -8 28 -74 20 15 5 -3 29 -3 -18 -7 -13 -30 51 -32 38 18 52 29 -14 44 2 -26 -20 -45 63 -28 -9 -20 -54 8 13 -19 -26 26 -26 44 10 -14 16 5 11 19 -54 -9 -24 -63 -24 -23 5 -54 27 24 15 -50 -12 -15 10 -1 36 -60 0 30 -16 18 25 -2 -15 -8 -75 -10 -17 12 4 42 22 -40 -18 -15 0 -1 0 17 -9 -74 -36 -51 -29 -24 -18 -41 -58 -18 -27 -23 40 -37 17 -27 24 7 -7 -35 -21 7 -16 78 35 25 21 67 39 51 -4 -17 -13 27 34 13 -8 -11 -4 -29 20 6 -4 51 -7 72 -15 14 17 13 -6 6 -51 26 69 15 7 -33 60 -20 44 -6 4 33 -27 35 -36 6 -3 32 -9 32 19 -2 -14 30 -9 -10 13 -24 -24 7 13 -6 19 -19 -8 -23 -10 -5 40 -13 29 23 -18 35 -49 -16 15 15 -17 57 22 -16 -5 25 15 1 -6 29 -43 15 25 -2 -48 -53 -13 -25 23 1 16 -26 -22 -57 25 31 -24 -6 -10 -45 50 32 -20 11 -45 0 -25 21 -49 -32 -6 -8 37 -51 -45 -9 11 -19 35 19 23 39 -22 20 -27 34 -48 33 -7 -27 -3 -7 -12 5 4 10 13 -19 -44 6 -47 -20 -29 18 2 -38 -14 -38 30 -17 32 10 -32 5 24 -81 46 56 44 37 32 4 -18 37 48 30 34 -26 -2 1 1 -8 -32 -19 -14 -15 19 12 3 -3 -13 26 -12 -3 -19 -19 -12 14 -23 -26 19 -9 18 22 -12 -8 -18 -32 30 -23 -28 -19 -39 16 -12 26 3 -15 9 37 25 8 -29 9 5 18 1 42 -20 -38 -19 -11 -14 12 3 32 18 -14 -33 92 42 57 5 25 3 15 68 63 -39 0 19 38 19 116 38 23 -52 20 69 31 49 57 46 -5 31 84 92 43 36 46 -22 26 40 16 71 60 78 7 47 75 -47 -7 -1 8 1 -11 -37 3 38 36 9 -11 -30 -33 51 -7 -43 -87 32 -44 -6 10 -36 47 20 49 -6 -38 -10 -38 63 4 8 7 -12 30 -16 52 -13 54 31 -66 -22 -24 -45 35 44 33 8 64 3 -12 68 -8 -22 -26 16 -9 -46 -28 27 -3 20 0 2 23 -1 -24 -80 -7 -71 0 -4 -10 -1 13 -29 -43 -22 18 54 -16 -10 2 -24 32 -52 -28 -27 4 -32 11 10 -18 13 22 81 -11 -9 -19 14 -26 -20 7 7 8 44 4 -8 8 -38 28 -87 82 34 53 24 -23 20 16 18 4 -29 14 -21 -39 35 63 4 9 54 8 43 46 32 -16 -19 -16 -41 -4 6 -21 5 -27 -32 -2 12 6 16 6 6 -32 55 38 44 -26 19 -12 -68 36 -32 2 17 -9 60 -57 30 -10 -9 -24 12 -13 -44 3 48 -11 -3 47 19 -41 -1 20 47 -5 23 26 -12 -37 16 -61 69 -2 -12 -23 103 48 9 11 -41 -45 55 40 -19 11 58 -4 -26 26 21 20 -65 22 -24 15 -10 -39 16 -26 38 38 -9 40 -8 -12 -47 -5 -6 19 39 -16 23 25 -23 34 -24 -10 11 8 12 51 59 -27 -43 -19 -24 -11 -39 21 -15 77 -5 5 49 33 -23 -25 17 14 -13 -18 -23 -22 39 -24 36 0 36 -7 47 9 -15 -39 -27 42 -22 10 1 18 -7 -23 31 -16 -4 -18 -3 -28 2 32 43 16 -20 -63 0 44 3 -50 -22 -15 -8 27 -60 9 0 41 -23 30 14 -23 -1 -40 21 -17 -11 -39 31 58 23 14 47 -28 43 23 -33 -24 -13 18 -45 -24 21 11 -1 32 9 44 -4 -30 21 -40 -4 23 11 -14 30 -12 -17 -1 11 0 0 26 15 -17 21 -9 -11 3 -14 -41 4 -21 23 -10 10 -19 19 15 26 -15 20 -10 8 -6 -15 -10 -7 -14 -6 7 -13 -45 -16 8 -6 7 8 -18 -7 0 -26 56 32 12 -15 57 -7 -75 -6 -9 18 37 2 41 13 6 -40 22 -33 112 -22 17 -43 41 18 -50 1 0 34 6 -12 57 29 4 36 64 -37 -6 6 -19 -9 69 10 -16 -22 -28 29 41 30 14 9 -48 31 54 -28 -41 35 -42 6 -21 62 35 -27 -2 12 -5 38 -11 40 20 -26 55 -75 -26 13 -30 37 53 -18 41 -23 -43 -32 -32 51 19 3 -7 -44 50 20 7 6 -15 20 -10 56 -31 1 7 14 -9 -33 -25 8 14 11 5 29 -37 -35 49 12 26 38 4 -15 0 5 -6 -7 23 38 23 -2 29 -5 -14 -33 -25 36 26 -28 -14 -45 6 -46 -18 -6 -40 -19 11 1 -28 29 0 -45 33 -45 -26 -22 58 -6 -47 41 -48 -17 25 3 47 -7 -10 50 -28 51 -35 2 -67 -24 -55 2 -40 -2 -12 10 14 28 -19 -83 -12 -31 -21 -4 -9 33 21 -34 -31 55 -28 24 29 36 -40 -6 -1 10 51 -22 19 -29 14 5 -56 -15 1 -41 -26 22 7 14 -12 49 -54 27 -84 0 76 13 44 -10 37 -22 -26 -62 22 -37 66 0 -13 -45 10 -1 -19 94 44 -3 -53 -36 -78 44 -54 -40 -38 12 -19 1 -24 27 -38 42 19 15 -18 -26 -6 63 1 -7 25 8 -4 -19 19 15 0 -42 -40 -3 10 5 20 -19 45 25 75 -43 85 8 53 17 9 -43 -2 30 -75 31 7 61 41 74 10 29 40 -33 16 33 -7 38 57 31 -59 -11 7 13 -11 14 -34 22 41 -24 33 -33 -36 27 -6 -38 -13 15 -4 70 -28 26 17 13 47 -21 12 -24 -18 -6 62 26 -33 7 15 -32 -14 -42 71 -41 -39 40 -78 4 -11 -113 20 -12 -26 21 -2 3 -57 4 -18 40 31 12 -16 -45 14 42 -69 1 11 34 -6 22 -14 14 5 -27 7 -46 4 59 -19 38 8 15 -3 37 -33 92 9 -21 37 -37 2 -16 -20 -27 37 -18 17 -8 53 -48 -13 -45 42 -7 30 -15 18 1 -20 7 -21 16 -30 5 -30 25 -33 13 35 -8 36 -16 31 -44 6 -11 -11 43 37 -45 -21 -10 -20 -38 -9 -31 36 9 -20 -17 0 18 10 -19 18 47 38 15 -51 -9 -22 85 60 -9 -44 51 1 29 3 -21 75 11 -20 -45 -23 -12 11 73 8 15 56 22 -50 -65 3 10 11 18 -21 -19 -16 22 2 -19 -6 17 36 2 102 80 18 -9 -31 -9 7 30 25 -30 -7 13 30 -15 -12 36 12 -1 67 -16 -8 -23 26 -54 23 5 -43 -72 14 5 26 21 69 -19 -32 33 -27 -6 -13 -63 46 -83 42 45 19 23 11 -27 7 -5 -25 -32 2 -37 -52 -23 -40 21 -23 4 -29 63 29 -1 -37 22 3 -9 3 14 44 36 13 -25 25 9 27 -51 -5 -37 23 14 55 31 30 1 6 56 17 -58 18 43 -45 3 10 23 73 -3 -23 -37 20 -12 4 30 42 -67 -31 -19 -14 -19 -66 10 -9 47 -55 18 -31 -12 28 22 29 -15 -31 45 -47 48 12 -14 -41 -32 -47 10 29 10 -53 10 -7 44 13 7 10 -8 -4 43 50 -23 16 -54 20 -25 31 -44 21 -12 13 2 44 -37 -21 -24 -37 25 45 -31 -18 26 -57 -49 -21 10 0 30 38 -64 -1 -21 -20 83 27 -25 86 -17 6 -6 -46 -36 -41 2 -10 17 2 29 32 -22 6 -1 26 1 24 33 35 36 -43 8 27 31 -6 27 29 11 4 -11 -11 12 -24 -38 31 -23 15 -46 1 -39 -14 18 13 -24 10 -3 10 16 -8 12 23 41 30 -2 22 -15 19 49 42 9 -11 22 -2 9 38 18 -18 33 -5 17 17 29 -38 -3 33 -34 -28 21 34 -13 24 -28 26 19 -2 -30 2 -51 -22 -12 -1 -25 -8 8 34 43 -15 23 -13 36 16 -35 22 -14 25 15 41 1 8 -46 2 26 11 -1 2 -14 -11 -7 57 -59 32 -41 24 18 18 3 -2 -10 16 -5 36 25 5 21 29 -101 2 22 -23 10 8 -21 8 39 24 4 -1 5 -41 21 -9 -12 12 -20 -29 -14 1 -28 46 -21 35 -15 -7 10 15 -49 -27 20 -19 42 -1 3 -20 23 10 17 -19 6 -22 23 -36 -35 -5 17 4 -37 18 -25 -28 23 12 14 -10 34 20 -23 -113 12 -14 15 21 37 -52 26 -16 35 19 -5 46 -20 -45 -37 22 -12 -55 -1 61 -34 -52 -43 63 5 -7 -3 -65 9 1 -23 50 -17 32 -7 -37 21 19 -7 19 -11 14 27 -9 -21 -36 -49 -17 33 42 -35 -26 -20 29 -40 6 64 -1 17 23 -54 -56 32 53 -29 -11 22 42 16 8 -18 10 -6 31 10 -7 32 -49 47 -36 53 96 11 -7 16 26 42 89 -18 -24 -1 10 17 -20 9 32 2 -27 35 12 -16 -29 -15 31 11 -24 -14 3 24 -2 -57 8 23 37 15 -11 21 -14 -8 5 -1 -19 -24 -4 -1 -12 13 -22 41 -31 0 48 47 -4 46 3 -9 -15 12 -47 28 -9 3 -18 -2 2 25 7 -3 15 -19 -30 51 -67 13 8 71 -31 34 65 -32 0 30 -22 3 42 -46 -72 -24 91 39 28 2 -32 1 -5 -40 -25 -48 -4 17 -76 -2 -52 -10 38 -43 10 -67 31 24 -23 71 -68 33 -47 -24 -52 -19 2 -47 3 31 -62 44 26 20 -25 49 -19 -42 -92 -8 26 30 0 25 -3 0 -34 -21 -61 -13 -12 -33 -56 -21 33 -25 20 -42 -16 21 -16 -20 -25 -83 -19 23 19 -2 46 -28 -15 -15 6 -8 -38 0 -33 -34 -42 -39 -13 -39 -44 13 19 -13 4 28 -32 10 -9 -9 19 3 33 8 15 -7 -18 17 -4 15 -2 20 -12 24 -45 -38 -5 15 -65 -7 -31 -2 11 70 2 21 43 -3 14 6 0 32 -21 -32 9 -25 4 20 -22 -8 0 48 22 18 16 -32 5 -42 -18 31 12 21 29 -5 -67 -8 -45 -39 -5 -15 25 -18 73 34 17 -4 -40 37 -10 -9 -38 30 -33 -22 32 11 35 -27 -3 48 16 1 25 29 21 22 -25 -38 13 -18 33 -18 -36 29 -1 1 -3 21 7 7 14 -36 32 29 -8 -21 26 -12 47 3 6 -21 9 -2 22 -39 36 18 18 -35 -41 -1 32 5 26 -23 16 13 18 28 5 -9 -26 -13 9 0 -42 -5 -5 14 -9 26 17 17 8 28 -10 -8 -20 -13 18 -18 -21 -9 13 -6 -5 3 5 -2 -26 -46 30 -38 32 -7 43 1 -34 33 -31 -10 47 -49 6 -17 10 -15 -11 -58 -48 -9 -21 1 33 -57 -29 -33 30 27 -6 -42 61 -17 25 -27 62 -42 -33 3 39 33 -76 94 1 -4 17 -5 3 -33 -27 -42 -28 40 -3 17 -26 13 -31 12 25 16 7 -35 0 -85 -6 27 5 46 3 14 69 -73 5 -33 -47 -17 -1 0 -39 -36 4 9 12 16 38 -13 -18 -31 45 33 -15 -8 2 33 -14 4 54 -52 9 40 5 -22 -23 -19 -42 -32 -14 14 8 -1 -45 -11 3 -40 29 -5 11 15 41 2 -26 -1 -9 -14 0 -11 -38 -4 28 37 28 28 -52 -3 -1 27 10 2 2 -35 41 -5 4 17 38 2 -19 -25 -16 21 -51 31 -36 16 -12 5 33 9 33 -57 -4 -35 0 -46 -25 29 -37 -49 0 -7 3 43 13 -32 56 -49 -21 -54 -39 8 13 -53 -27 -45 -67 -5 24 -54 -34 25 44 38 1 -25 -17 6 -17 59 -44 -21 -24 6 -42 -17 -3 -6 2 -62 6 39 -46 -44 -65 34 -46 1 -54 -59 30 -31 -4 20 42 6 20 -8 -32 -19 -28 12 -18 40 -22 -30 12 -51 0 -33 -8 -7 31 -78 97 -52 -47 -8 -4 15 12 12 24 1 -16 -40 22 -13 -1 58 -15 4 -45 -34 8 21 2 54 19 -7 -23 23 -4 -9 -3 23 32 11 42 -7 2 64 12 -18 35 -17 2 -14 15 89 74 5 10 -1 -2 -28 -5 -13 -18 22 48 -35 41 -28 6 -21 -13 -7 -11 12 21 50 -24 -58 11 10 -56 -30 36 23 -62 -6 6 45 27 38 -24 -29 -19 23 -34 -7 50 34 -40 -22 30 12 -27 -40 -60 -4 12 -65 32 7 8 31 22 -62 -22 53 6 -48 11 -37 -46 0 12 13 38 21 20 -31 5 -14 -44 -13 10 42 -61 -36 28 -18 -37 25 -32 -65 -19 13 -39 38 40 -24 -18 -24 -22 42 12 5 -5 0 38 -13 30 -20 37 -4 2 -22 -24 16 -11 -30 22 27 -3 -19 4 -32 2 11 25 19 -2 -1 32 -2 10 -24 -11 14 -33 -16 7 -32 -25 9 37 -42 -4 21 -4 22 23 -29 -11 -38 -8 -9 -21 -3 7 -23 4 30 -8 -11 -1 -5 -6 2 10 -10 11 37 -9 -31 -45 1 7 -8 -7 12 -20 -36 8 50 11 -20 -29 -1 -19 -2 18 6 -1 49 -18 4 16 -20 -6 4 18 12 34 -2 -23 10 10 18 7 -24 -11 7 11 -3 28 -4 -7 -22 -9 -9 -94 -11 -59 4 -13 2 40 28 4 17 -1 -19 11 6 13 11 -11 11 8 -5 -14 38 -7 19 13 -25 11 13 1 22 -9 -6 19 0 1 -11 2 11 1 -7 2 9 22 7 -11 -9 -17 -5 -13 -5 20 17 9 8 -7 -17 8 -1 -20 -9 3 -8 -7 -10 -3 13 9 -16 -2 7 -10 5 26 8 19 -3 5 11 -47 43 -2 -43 1 16 20 15 -36 -31 -23 -27 -3 -19 -15 41 -17 28 -20 13 -15 23 -17 -20 13 1 -10 20 16 -1 13 20 23 -59 21 16 25 72 -31 -18 -28 -2 -26 -9 30 12 8 -19 50 -62 -10 12 19 -38 0 1 53 14 23 16 -53 43 43 70 38 -42 -26 -35 3 -18 12 24 -115 -43 35 55 9 -4 43 21 -48 -21 29 43 -27 -73 -24 -4 -64 72 34 -34 38 52 38 -21 33 -35 6 -30 25 -5 15 -5 -10 7 -16 2 -9 -44 18 -12 -8 -24 27 19 2 -22 -7 -18 -42 -13 -19 27 32 48 -33 -13 25 11 -25 -8 -24 10 -1 24 -32 -3 21 4 8 -15 -30 17 -18 40 8 -39 -10 -26 -7 -36 -53 8 -11 -30 2 -5 -28 14 -43 -51 -30 22 -8 7 -39 -23 -13 -10 -20 5 -18 13 -35 -28 13 -40 38 -4 39 52 0 17 13 24 -50 -39 36 0 15 -50 -16 -25 -8 39 10 -46 5 58 -18 -9 -16 -69 -20 37 23 -36 -39 58 20 -3 -14 3 -21 36 61 37 -128 4 -52 5 56 98 -3 -4 62 -21 -44 -105 -55 47 27 -21 29 1 3 10 27 76 42 23 -26 -48 16 -6 39 10 19 -31 5 -20 16 -44 -7 -24 -5 18 -5 -48 -15 -58 0 -8 2 14 8 24 32 53 -6 -19 -19 0 -45 -20 -21 32 -11 10 -64 -9 -19 4 -13 -12 -39 13 40 2 -21 6 -18 62 36 -40 -75 22 16 -29 -69 67 -64 42 37 -29 13 -23 15 37 55 -50 -72 9 15 -15 -32 25 -45 -23 59 48 82 37 43 -14 34 12 21 59 -4 92 -10 -56 -48 -84 43 -74 -19 73 -28 30 -8 -23 5 -12 -72 51 49 30 28 -102 38 -24 -24 -15 52 49 44 15 22 -51 1 -27 -25 -33 56 119 -31 42 -8 -61 -7 -1 11 -37 -32 -82 -16 -28 -73 -31 -6 1 -39 41 15 -24 -43 6 40 49 -6 -46 29 -44 12 35 22 -4 -35 12 -27 -10 -36 -3 22 11 52 29 9 -16 -13 27 -40 -36 -50 22 -9 0 -22 -39 0 -5 -10 -1 -71 -24 -4 26 -18 15 28 -54 2 -29 0 12 39 -20 -26 17 30 -42 56 115 -44 12 -1 101 -15 12 -34 13 -13 -55 32 -29 37 -25 -36 -31 29 12 13 -7 34 5 29 2 32 51 -19 30 15 45 10 -28 -124 -78 16 -91 -5 66 56 4 4 121 124 -29 -125 -51 -20 -81 13 78 8 43 -45 -61 6 -89 -80 2 -15 -21 84 11 -25 -118 -21 109 40 -48 -5 14 50 72 31 -5 13 14 9 -32 -35 54 -15 -1 -45 -32 2 0 -64 -9 9 -32 -26 -63 16 5 -60 42 20 34 -12 66 -29 -37 -28 13 46 -4 -33 -10 -29 12 -26 -21 65 -30 16 12 10 9 29 -20 9 -34 48 -19 15 -22 -16 21 71 14 -44 -3 24 -9 9 -54 23 -68 -72 -1 -14 -96 19 22 -11 17 -12 -20 24 61 33 -5 -80 -23 37 -33 -38 -43 -7 54 -2 -2 -12 77 5 -27 -35 -18 -22 15 -27 -10 1 -9 -11 70 -18 0 32 44 2 16 38 42 85 2 -45 -43 -13 7 111 -69 0 98 76 -25 59 -23 -26 -48 -51 25 13 35 -30 -47 54 -11 16 -3 -22 -6 67 -106 -29 32 -93 -69 9 38 43 -32 -61 72 -68 -55 58 18 0 -21 -32 11 -33 -17 28 -28 0 59 -38 -17 2 24 16 -49 -22 47 -3 3 -9 -5 -12 -9 26 -23 3 24 -81 -62 5 13 -15 -41 32 -36 -11 -10 27 -13 49 91 -30 -41 90 -2 10 -120 33 87 -27 -120 116 -17 75 -53 -49 -16 -3 -121 -62 -22 8 0 13 71 6 34 -40 -38 -47 -59 -73 5 46 70 -128 3 45 23 63 -117 45 54 123 78 121 74 -66 10 69 124 100 48 -24 -87 -79 58 -52 89 -127 106 87 63 50 7 -35 -127 -92 -123 37 -124 -45 1 120 -60 -64 90 15 24 102 -111 -15 -28 123 -89 48 86 127 -4 -71 -125 6 19 -46 -119 125 51 -70 31 -125 12 20 -14 -30 18 40 31 -121 55 -91 -80 127 127 66 -36 3 91 -65 20 -9 19 -38 -44 10 -88 127 79 94 19 15 -31 127 -66 -26 60 9 -100 -1 -82 79 -56 13 -18 -10 81 -99 -128 81 15 49 -117 50 -28 12 -13 124 -76 -41 34 108 26 52 -115 77 18 41 53 74 -49 0 -89 -126 -85 3 26 -92 -126 65 -66 -25 -34 -24 117 20 -121 58 65 117 123 39 123 -26 -22 -1 -85 -48 25 -79 -52 -77 -21 -112 106 -124 127 78 -48 126 -20 -128 114 -109 -72 -33 -125 65 -73 -85 13 -33 -31 125 45 36 -15 60 -37 32 -62 -66 66 50 20 -89 127 124 -46 -70 -79 -69 74 -90 124 33 -55 -62 68 29 95 -117 -3 -127 79 35 -41 8 123 -103 61 92 14 77 28 16 12 -35 81 -12 -3 -87 -31 43 -32 31 -63 -128 -59 -67 -38 -63 -52 -125 -33 125 11 -36 -13 -32 -8 -54 127 -120 -2 -27 -113 18 -26 -7 -74 21 -117 -72 -96 56 -98 -31 -60 52 -19 4 15 36 -70 -58 -25 -125 -5 18 -5 -109 -44 -86 -25 -6 -126 -58 39 -32 -87 29 -99 103 70 117 127 -110 -90 -10 16 28 33 82 -66 58 -66 28 109 -119 127 108 63 127 68 30 -41 20 -63 110 -15 31 57 9 -38 -55 17 -114 37 125 -52 -104 -3 61 -127 88 29 -121 -68 14 -93 126 -9 78 -18 5 126 -10 -58 -102 -10 -32 36 -31 -40 -16 53 -78 113 -28 11 40 123 0 77 68 127 55 20 52 -18 51 -18 3 40 41 -10 124 -15 89 -69 52 -18 121 -81 -74 -18 -30 22 124 -95 -2 -47 27 -23 59 108 -127 62 68 -43 125 20 -53 -41 -32 -59 40 56 -39 -98 -29 62 39 -46 29 -65 28 -20 -118 17 61 9 62 -20 62 -30 -84 -62 -43 -47 40 122 -108 -52 51 -128 39 127 -62 126 -42 10 35 -20 127 -44 127 39 49 38 2 -124 -124 -19 37 -7 -3 127 -125 7 -127 -106 39 -76 -68 -93 27 -127 82 123 29 -100 22 26 46 -20 17 4 122 -22 -11 -18 106 -107 -28 -67 71 69 127 -63 77 -39 56 -26 57 46 1 19 127 0 -127 -59 92 0 32 126 -64 -23 15 95 -68 23 16 83 -53 -45 102 104 -20 -43 126 -9 1 48 -27 -126 -32 7 4 -52 127 -5 79 -50 -14 -126 -67 70 -117 -59 -54 70 -19 112 -115 -118 -126 -125 21 -16 -127 -36 126 118 -106 13 -80 -98 9 -55 33 -93 -24 41 -17 26 107 7 -32 15 -127 22 108 -81 -113 -128 28 -113 -58 10 -29 -101 -106 85 -4 -125 -114 -108 32 -113 23 -92 44 -102 1 -81 -125 12 39 -94 127 -122 -53 -108 28 -58 -83 -128 55 -48 -123 12 51 83 9 -127 45 27 127 126 127 57 -12 124 21 -54 27 67 126 -109 85 23 -72 14 -60 124 118 112 20 119 -67 38 44 124 -127 27 12 -40 -122 -15 10 46 -88 122 26 -45 19 18 -23 1 127 45 69 -102 94 -50 -44 -24 -11 -35 32 21 63 -80 -22 18 109 -29 114 -118 -56 120 4 -45 21 33 -27 75 76 -95 -14 -120 124 -35 -128 -55 127 54 2 41 -77 -3 -91 -55 -102 51 110 -41 -69 88 104 -80 -1 2 89 26 119 -12 63 -128 37 39 -76 59 -107 126 10 -127 125 -68 19 -45 18 -94 -1 123 126 127 -9 -20 94 39 -121 31 -1 -114 5 127 125 80 22 -45 33 -42 123 48 4 -16 -127 -56 -119 30 -116 -5 -33 65 40 -2 125 22 112 6 -78 67 -119 127 -73 49 62 127 -104 25 -21 -127 -81 40 12 -62 -119 -20 42 83 -96 -128 92 -40 -43 24 75 19 38 -41 -59 -98 -93 -99 -51 -18 -33 19 48 11 -6 -42 31 94 127 -72 84 -123 127 -47 108 93 57 109 111 111 126 53 -82 13 -104 87 127 -115 116 30 21 -8 78 29 -19 -38 116 -31 -46 63 111 41 -44 -48 -71 -33 6 -63 -4 -99 65 -23 52 27 -82 -110 26 26 104 96 -76 60 -100 -119 -118 -124 -128 77 81 -77 -93 121 -101 88 -74 55 -25 7 -44 26 31 -79 39 -2 29 -1 112 42 -3 127 -54 38 -50 102 -125 -95 -79 15 -106 6 -18 -92 127 -87 16 -6 127 6 24 -55 -45 -125 52 69 5 -45 -128 74 45 122 -56 52 2 54 -59 69 23 5 17 -44 62 36 -52 83 39 -94 2 -16 12 0 -127 -110 -128 -15 123 -18 41 68 -105 -104 82 -23 88 10 126 -124 -36 1 2 -6 120 119 40 88 95 96 -62 31 107 70 123 -107 127 -123 58 96 19 106 56 -111 -125 -47 61 79 -82 -26 -124 -8 -47 -128 71 62 125 -47 -66 79 127 124 -106 2 70 -5 -127 28 -1 80 -128 -14 -83 -115 113 122 127 -128 -52 76 61 -127 82 -34 11 120 115 -109 119 -127 127 60 40 -9 -51 84 -20 -122 123 -43 -57 121 22 24 127 72 88 -21 -7 -121 94 -35 75 13 119 37 -127 8 -128 -127 40 65 -90 -128 -127 -51 -126 -99 -118 110 -52 121 11 -124 -80 -11 121 -9 -102 12 89 56 -68 -25 67 -79 71 6 57 99 -51 -18 127 23 125 18 89 -40 123 -45 30 126 -15 -124 21 61 -5 -125 -73 -51 -27 108 76 -42 -2 -126 101 -20 56 -44 -14 117 126 -127 -122 48 -127 12 -49 -109 -102 35 13 -39 -49 108 125 35 -104 95 68 -57 22 -122 34 119 -94 -117 92 -64 100 -2 21 -127 -84 -2 -100 95 24 22 5 8 61 88 72 -128 12 86 90 25 -10 23 76 2 100 -18 24 -20 -127 -2 -14 -88 -30 21 -2 65 36 -96 -128 121 -66 -91 126 123 -11 -19 -117 -53 37 -116 -123 -73 -122 -128 -50 -18 -62 108 -44 -128 -125 88 68 126 -126 23 40 -62 -121 -20 11 -37 -48 -117 -34 108 -90 -121 -24 115 -21 27 -7 24 96 24 41 -128 -80 -55 2 124 -127 -103 31 32 -127 51 29 -9 126 -77 -13 -30 -24 -73 117 -123 94 19 29 124 -90 -56 -126 -12 -71 -114 -74 127 -121 96 -111 -117 -47 -128 30 -125 -45 -17 84 127 120 -45 88 95 20 -126 15 30 -87 33 -61 -68 127 70 -117 -77 64 110 127 -68 -41 -126 20 67 57 -1 -123 43 -62 80 121 -17 -124 -20 114 123 11 127 39 -46 -59 34 54 -69 33 96 91 127 -120 -64 96 -63 -15 -68 -95 49 126 -58 123 -72 4 127 99 -115 -87 -119 45 64 76 127 112 -117 54 -125 117 50 -122 127 127 -56 -128 -17 17 1 -8 16 -58 104 -120 99 -9 -27 -122 61 126 34 41 -4 -100 -66 101 118 -119 127 -123 -123 54 82 -126 38 118 -98 -30 -29 -11 37 39 -77 127 -38 5 -17 -127 94 -55 10 113 -75 127 53 -7 127 -3 113 -111 -62 76 5 -99 -112 -81 -94 -21 108 -126 -31 -106 125 -49 -98 -128 90 -35 101 -39 -76 114 74 60 -18 56 127 78 -81 -43 -106 114 117 -124 127 -26 86 -22 6 48 44 -108 23 120 114 80 -70 124 65 -19 48 35 -127 -96 15 10 127 -106 -118 97 58 41 127 122 -128 -127 -98 62 -22 -127 127 -18 61 -120 127 -101 32 -12 92 -80 -127 -82 -43 -62 127 -4 29 59 5 -79 -113 119 118 -29 12 69 94 -16 47 42 -95 -127 -45 -88 -123 13 12 69 -12 124 17 -62 3 25 -127 -45 104 71 -94 119 16 24 117 -66 -122 -78 31 55 65 127 -30 -1 127 23 26 111 -115 -21 71 -66 127 6 112 46 -127 -101 127 -59 34 -123 127 -115 74 -60 37 82 17 71 35 126 112 -26 -92 126 83 38 -81 75 -68 63 6 53 71 17 76 -10 70 116 -44 -87 80 26 126 -36 27 41 -6 127 -48 44 -51 23 16 -86 14 -49 -50 -49 -47 -103 127 -128 -60 97 79 127 123 124 7 -90 -4 126 -18 -108 -29 22 43 -121 -127 127 119 -123 122 -128 -43 -125 -30 -78 124 -18 82 126 83 -86 -126 126 114 -127 29 121 127 78 63 -38 13 8 -101 114 120 -127 -124 127 55 -2 -54 61 -35 123 -63 -38 126 -7 -106 69 111 -28 -86 109 -72 -65 5 117 30 -108 77 26 -38 55 125 41 13 -113 -64 117 119 44 -48 -115 -118 -22 -15 -12 49 98 123 -29 -31 46 -123 -83 -71 -119 67 80 57 -53 -106 106 -9 127 -87 -9 72 33 5 -117 -19 -38 -45 29 81 79 34 -2 -126 95 80 60 14 -49 -11 119 -127 -5 -48 -67 67 45 82 -64 -73 -120 -48 -88 63 -46 -69 -58 -10 120 45 117 -125 -16 10 127 91 85 90 60 -110 -1 3 -50 36 -20 117 -38 69 -125 53 -125 101 -113 90 -126 5 -19 -69 49 44 -19 85 73 105 70 61 -120 62 -17 59 82 117 -69 71 29 117 -12 15 -31 13 -74 -47 50 -23 -52 57 90 -58 -65 40 106 -53 14 72 -87 53 55 114 119 -96 -128 97 -125 -53 117 -113 15 127 -1 109 -59 -107 127 -125 -8 126 64 27 127 127 27 -49 -73 -83 99 98 -116 85 -102 127 104 -40 127 -18 119 -9 30 123 -77 -81 -73 5 -11 103 -36 74 -23 -127 42 29 28 -70 87 -56 23 116 39 -80 -120 -80 23 124 68 95 -37 127 -107 127 62 -68 27 -66 -126 7 -15 11 126 126 117 -8 -110 127 127 38 -127 -83 127 20 -20 -25 24 71 44 -53 -49 -42 98 111 123 112 -128 -2 -7 124 -78 48 89 125 -122 127 -74 126 84 87 85 -67 -20 88 -25 118 36 -41 87 120 -40 -122 66 66 -78 -1 127 -123 -60 -103 54 -56 -128 -61 -117 -120 -45 103 85 -105 86 -118 -35 -122 -126 -122 99 127 -51 73 118 -125 127 -60 -66 -41 -28 -86 -35 41 120 -39 126 -122 56 -104 -39 -95 -19 6 118 -91 42 39 77 -50 -41 10 -96 18 38 42 79 -35 -122 21 49 -118 -124 -109 -61 94 -126 -30 127 -31 -103 109 -76 40 -69 5 24 34 42 -3 125 59 91 -12 124 -121 -72 13 -82 -17 90 49 11 -25 -116 127 123 0 1 -57 50 16 82 81 -121 -122 36 73 -126 12 -111 14 26 126 -37 -9 127 -24 -127 44 29 22 -21 14 116 73 107 -38 127 39 -7 -92 111 60 97 -94 -78 70 119 -124 -118 46 1 -25 77 -10 -116 -122 -125 35 97 39 -125 -86 -128 43 -14 127 -94 -70 -8 -87 127 -121 26 79 -32 -105 -8 11 -43 -16 -73 -31 6 -24 -112 66 -25 106 -73 -7 -127 -98 126 127 113 -127 -123 -102 -125 -65 20 -60 -128 58 74 -89 -53 -106 -59 52 22 -127 -35 127 115 -51 -8 -39 -6 -90 117 -127 22 -32 127 25 -128 46 -11 -11 -127 -107 21 -51 38 118 -27 -12 100 10 -42 -111 -54 28 -63 -22 38 -43 -67 40 -86 123 -125 -33 -90 -64 -107 -127 -124 -125 47 118 -14 -40 -55 45 -54 -26 -111 -93 -124 -122 51 -128 -12 116 18 -121 -21 67 -15 -83 -128 68 65 -55 127 43 107 -45 -128 72 90 -128 -6 -118 -128 36 119 127 -125 -128 -98 -49 -65 127 -46 61 60 34 -24 23 80 92 -41 -5 -79 -95 -26 -38 -87 -37 -1 76 -127 -44 -14 121 -12 -122 2 47 -21 47 5 -26 -29 -24 -63 11 20 85 25 -92 -18 73 28 -57 74 -53 -2 30 36 -19 -107 -18 -79 -25 16 118 32 22 -118 71 -41 38 -62 1 71 -17 1 1 94 94 -59 1 -17 107 68 39 -49 24 0 -91 33 20 11 41 -32 33 -9 0 39 -13 -115 -52 -83 -4 12 68 -50 63 16 -29 -29 127 -12 127 -58 119 -46 -5 -128 76 -27 18 34 -47 22 21 -121 -63 -23 -39 58 40 21 -5 36 15 25 -77 72 16 4 -18 -14 -81 54 -16 -128 -16 -127 64 -16 -15 28 126 25 8 7 10 53 26 -95 -106 -7 -62 -69 127 -13 54 52 -101 -21 -7 -27 -32 -76 82 8 -97 -17 -127 28 22 -41 12 122 49 31 -32 87 -22 -18 -37 -16 14 -16 -57 75 114 -92 33 127 64 -53 -56 -127 -32 -47 -1 -53 -22 4 -96 50 91 112 24 109 127 109 100 -67 50 111 85 -88 43 -71 -50 -33 5 127 7 66 -125 -61 52 -44 14 -49 57 -54 -127 -27 12 29 59 -128 -117 -52 -81 -28 -97 12 -127 -20 106 88 -100 45 -62 121 78 -107 16 -113 71 -20 46 41 18 -34 21 -8 55 -44 48 -22 4 -119 50 111 30 -65 115 -47 15 74 -101 8 55 -68 72 -54 101 10 26 18 62 -63 56 -40 -35 4 -27 -58 -6 48 56 21 20 63 -91 21 -12 79 -53 3 -14 12 -99 -23 -127 -17 110 6 44 15 -28 -111 2 -42 -90 -39 -27 67 32 66 47 -66 -16 -52 37 -53 12 21 124 71 -81 69 127 -113 21 13 -117 -5 -45 99 -4 -30 -39 20 -17 62 -1 -126 75 -32 43 55 -12 95 -40 -13 -17 -26 -20 -65 53 11 127 -60 61 122 -110 -26 52 65 108 83 12 127 67 120 -47 47 27 93 -47 -26 27 55 28 15 -126 74 -69 122 -69 -64 1 -88 112 13 8 73 -7 -96 -27 -108 -74 -78 78 109 87 53 -11 -3 -36 -52 -35 -17 -65 -15 -9 30 -45 -17 27 102 -120 -27 -118 -71 17 -76 100 64 -80 54 16 81 -37 -118 -30 63 27 53 119 -74 -57 -88 -92 -52 -16 64 76 81 104 -26 -4 68 -54 -127 -48 -113 4 19 25 51 -63 17 99 47 -74 127 64 -73 -58 16 -5 80 -127 -57 27 57 115 122 -59 -6 67 127 31 -120 -44 -52 -126 28 -51 25 115 97 80 -107 55 65 41 71 19 -9 20 -104 35 -99 127 72 115 23 -42 -128 3 45 -55 3 45 -126 -125 -120 51 126 -40 42 110 -60 -95 -39 49 45 52 -71 -122 113 -100 -98 127 -78 -102 31 -20 -63 -128 -57 79 -4 -17 88 57 -32 -23 -117 15 -45 124 -67 56 -16 -50 -39 -79 14 -86 9 -3 56 -112 41 -102 -43 127 -48 -108 -29 -95 88 -46 127 42 71 127 76 54 -104 84 29 -123 34 -13 -44 92 76 -86 -99 15 -68 -120 -119 -99 -128 25 -20 -25 84 -62 59 -48 -34 35 -55 -114 2 67 -128 55 -69 29 -122 -10 72 -125 -31 56 120 -113 79 127 127 -85 -62 39 69 -107 83 126 -11 -106 58 -73 109 7 -25 -52 40 63 11 -101 -50 83 111 13 123 -35 34 72 83 93 78 -50 -40 127 -71 -94 -46 -29 55 67 35 -120 -70 126 94 -34 -9 52 4 52 -11 26 -8 29 -10 35 -22 -34 -24 -19 75 41 -56 55 26 -122 47 -119 -123 36 127 -45 -106 42 28 -90 -9 -76 91 -8 -19 -28 124 -120 51 61 59 -10 -90 -4 15 16 70 123 57 113 44 -16 89 -47 6 -19 37 -80 -25 48 92 83 2 -119 67 -41 -6 127 98 42 -121 -93 -7 -72 -14 -121 125 -58 4 80 -101 -27 51 42 14 73 54 69 -127 127 -128 127 -80 118 91 5 -116 -48 -1 81 -11 -2 -127 -126 -32 -99 42 121 -25 -114 96 -64 -63 126 -50 90 50 -54 81 41 -22 -114 123 -107 -99 -125 37 6 -52 115 110 38 127 102 51 -56 71 12 102 90 32 -47 -3 31 83 123 -75 127 77 110 127 37 115 -58 -61 25 -47 124 -2 -61 50 44 64 -8 95 -78 -95 -36 -127 -123 7 21 124 -3 115 -58 -25 -120 124 -12 127 33 36 -83 54 115 -13 6 108 -10 -4 -28 -9 -47 -14 38 -24 -78 33 37 24 -76 61 5 8 95 40 -53 -22 32 11 9 -45 64 -68 -52 -21 17 -51 -89 67 -34 116 -127 -4 -35 -26 -53 -2 72 33 8 42 23 3 50 -114 19 46 6 -84 -17 -111 44 117 28 -30 -29 -127 -41 -5 -31 50 78 91 -65 -11 20 1 -26 -36 79 -9 -14 -7 127 26 -126 33 59 33 28 -51 46 42 -6 -40 30 40 -63 -15 8 -21 95 64 101 46 11 -57 -103 50 -1 -54 92 47 -37 -37 -43 -42 -113 -58 100 -26 -38 21 87 -17 108 -64 -45 -27 -118 97 -15 7 3 25 52 47 -121 94 -28 -119 -73 44 -70 -66 42 30 12 88 125 -80 13 18 -4 -28 52 16 -45 -88 -21 115 -83 61 -41 98 -5 -41 -42 61 22 -58 -122 -16 9 -38 -36 12 -87 39 92 88 -71 -23 36 1 -19 7 14 61 30 34 -77 -10 -17 -18 70 18 -78 -104 88 38 -115 11 89 81 -104 5 32 -15 -2 -29 43 -100 90 35 13 -102 78 123 -65 57 63 12 8 72 -71 -101 -38 -1 -5 -64 -30 5 124 -42 -34 16 56 69 -5 -5 -46 -27 78 -17 43 -21 50 54 -60 61 96 7 -59 111 62 13 12 -2 -3 32 -37 48 28 -8 75 -25 50 19 52 87 9 -62 43 -25 69 126 -37 -45 48 -37 -10 -20 -52 56 -23 -4 18 66 13 36 72 -13 9 66 28 -124 -1 36 -76 -36 -65 56 41 -35 -10 26 -22 -69 22 -97 70 -54 -1 12 26 92 -38 109 -85 83 -12 -29 1 20 -51 27 -27 -106 33 5 47 43 19 -103 -22 -12 63 -62 33 -61 -104 -13 32 -38 127 -27 4 -46 -3 -115 -74 -27 -50 45 2 5 -4 -51 -92 -102 29 -15 -14 29 -42 68 43 -10 15 -19 56 -37 114 -9 51 -65 -114 45 -64 -101 -40 -45 -10 -69 28 5 72 -101 -118 52 123 -23 8 69 6 12 3 14 -16 -33 32 -62 34 -13 32 122 -81 -72 -7 -64 -10 -5 89 25 -19 -20 70 -10 -43 -88 8 -56 -34 -90 89 -68 -25 12 45 121 16 21 46 24 94 74 44 -37 -40 -60 50 19 28 -112 -82 23 -4 127 41 118 16 63 -35 44 -86 47 -94 -103 10 -11 -48 -56 109 -39 16 54 72 127 30 90 125 18 -127 -46 -7 -83 -19 -43 -92 69 47 -12 -111 -45 120 67 108 126 -55 -107 5 -116 -89 -120 38 -7 -106 15 -8 6 40 32 34 125 -19 -75 -17 123 -24 32 24 -107 109 -105 55 -32 88 61 -83 -89 -108 31 -65 -28 -28 -22 -70 114 127 100 29 -11 16 48 20 64 -45 109 41 -38 42 16 79 -54 -40 -50 127 75 58 40 60 39 -100 -26 -20 -57 -55 -32 71 123 -23 21 21 -10 75 97 -112 -26 -16 98 6 -14 26 -43 -13 13 -12 36 -80 10 5 25 -90 -47 -48 -54 -55 15 36 -81 89 83 1 91 -69 67 -62 -126 -15 -26 33 -125 -22 127 24 -73 -117 8 81 -53 -13 -8 48 33 9 26 102 -66 -9 35 127 -95 -19 6 -5 -1 -20 94 -19 -29 -41 47 -8 -120 -53 -36 -70 8 120 -125 -8 92 -75 126 -40 65 67 24 100 24 -3 -45 -87 -48 -20 10 19 127 -42 60 -49 64 127 114 79 3 8 -127 124 -69 -62 21 -20 1 -62 44 -24 -10 95 12 44 85 -36 27 -3 62 -31 -41 105 -77 -47 7 -45 35 -70 -20 -10 -27 -13 121 -9 14 -64 -95 -105 -8 -7 -98 -48 -79 -62 52 94 24 -88 -43 -80 120 -39 -114 -4 26 108 26 63 18 10 -42 2 -74 13 -52 -54 -79 0 -120 50 79 -118 75 5 56 25 4 -97 0 -108 -125 -42 70 87 -64 43 38 16 42 24 25 -28 105 30 52 -93 62 -52 63 64 72 19 -80 -7 -54 99 44 79 -96 29 -33 -106 43 42 70 -56 4 97 44 -128 -9 116 -57 -27 -72 106 22 -26 -67 -8 120 -22 38 24 -72 20 65 62 -128 -94 87 -97 -4 -6 74 -116 -63 45 -2 -71 6 76 -6 -5 33 -98 -40 114 -98 95 37 104 70 -1 10 34 -18 68 120 -64 38 58 15 -14 -29 -5 22 90 31 28 -78 21 -30 -49 -14 120 89 -92 33 -48 -25 4 15 -57 -111 41 102 1 -6 -81 75 -38 -65 122 -128 29 53 -60 127 -96 -64 -84 -80 -125 -128 -39 -124 -11 -121 -59 77 -110 0 21 -117 24 64 6 -29 -123 32 36 -57 -30 5 17 -106 35 62 -128 60 -16 -57 -123 -32 -10 80 -74 -22 -24 41 127 -128 127 -128 44 69 116 93 -118 -30 -74 -125 -42 61 20 -45 -36 16 -127 71 31 38 15 88 -124 -39 69 123 74 -120 27 63 -10 -64 -98 53 118 127 -83 -101 39 127 -23 -30 -113 -105 -124 10 9 -127 -75 -11 29 -77 127 3 -5 -46 -105 -127 26 43 -70 -128 106 -96 -13 40 107 27 57 9 -90 65 127 95 35 -42 -96 -34 -86 123 7 85 125 -126 -33 -128 126 41 -127 -128 8 -3 -117 -45 127 -122 79 46 -50 28 -101 4 -19 -44 -116 -128 30 -77 -38 -80 67 33 -121 -43 73 -119 98 70 39 29 -22 -46 56 -10 -24 -18 116 6 1 26 -128 75 -32 -22 -35 13 -36 -26 59 111 -73 3 126 -128 126 -122 62 -3 22 0 -64 16 101 15 10 -62 34 -38 -82 -14 -127 37 -12 -56 -93 42 -115 107 -42 34 -120 -98 -50 29 -79 92 -121 -89 126 127 0 -115 101 127 -13 26 -123 10 -61 115 85 -126 17 -23 125 -13 127 47 -48 -51 -123 -124 -38 104 -62 -127 -89 -90 -9 13 89 -86 -44 48 -116 21 127 99 -70 3 -8 -21 4 -84 125 -127 121 87 54 -128 122 107 -56 -75 93 -16 -118 66 56 127 123 26 10 -29 102 25 -47 85 -4 64 33 115 -44 83 3 12 92 28 52 -49 61 -33 -52 87 127 9 8 -45 89 65 124 121 -128 79 71 -66 0 123 -34 -92 101 91 127 0 123 -9 126 -58 115 -69 13 -34 -108 -111 -67 71 115 126 79 68 81 123 72 -60 53 -119 -15 -37 -74 -22 102 113 -128 -127 96 123 -103 -46 -50 -52 117 111 -30 -88 19 -49 127 28 20 79 95 97 56 68 100 73 122 -109 109 34 -53 110 -2 15 -27 117 111 -24 -39 113 -105 88 29 -53 123 -124 -15 4 127 57 -126 -59 -66 -5 -22 119 127 -126 54 33 -127 17 100 107 -127 18 3 11 -28 22 14 94 116 20 29 -20 123 37 -3 -42 -24 85 -55 72 26 -78 29 -5 -100 126 56 105 -23 -66 -10 -27 49 120 59 26 -47 -101 -127 -104 127 -9 -110 -32 121 72 124 124 -95 -128 95 -107 -28 -111 -77 36 127 -127 1 -68 -62 78 6 -126 -62 -74 -110 -34 -106 118 -52 84 -43 19 -34 -124 -119 127 101 25 -23 -9 -127 -39 123 91 64 -51 -56 -122 61 72 -70 -48 -9 -17 84 76 -128 45 101 21 -119 126 30 44 -27 -21 -122 22 127 55 -54 92 31 -28 38 -27 -47 60 38 48 70 -21 46 -27 34 -14 116 -30 -109 102 108 46 54 90 120 120 -127 38 -127 -33 56 -1 -125 34 -33 8 -5 -60 30 -1 121 93 30 69 65 14 -128 104 -15 -41 84 -29 -45 -10 94 -29 -37 -28 57 37 125 -110 44 -56 123 17 -7 -33 -84 43 -127 38 93 -128 33 -125 121 -85 27 62 -62 -128 -53 -42 -36 -123 105 112 127 -94 -39 -92 -37 67 18 -122 -56 55 -92 36 5 96 -45 0 -120 -24 -62 -90 -119 3 28 -1 -126 -28 -94 -96 109 -93 -2 -34 -74 77 -66 127 126 13 -31 -8 -86 -128 12 55 -58 -37 78 86 8 -30 48 26 -74 35 127 -16 -51 33 -9 -3 54 11 81 -19 18 23 41 6 22 13 16 -8 -81 -118 47 26 55 -70 -59 -82 51 66 25 67 -59 16 16 0 32 -1 4 61 26 -90 -39 5 32 105 -47 50 33 -118 104 -33 -118 -5 -49 120 22 94 7 127 -124 -115 49 -100 65 -116 -49 -58 5 -14 -18 0 -111 31 50 -40 -53 -128 63 31 53 -120 32 -19 74 -77 -12 9 -111 -68 119 -62 127 -67 89 -115 40 41 99 -75 21 116 -28 55 49 -50 -50 9 -37 21 81 -6 53 125 -30 -69 36 117 -113 -101 18 26 -44 1 -117 -38 -95 126 126 53 78 127 -60 -58 127 17 5 -23 55 -36 24 15 5 41 -96 35 54 0 -22 27 86 41 13 10 68 -24 0 114 118 38 17 9 54 -60 -31 -56 -8 -47 -74 63 35 73 -17 83 -36 -33 -44 34 -27 -30 -94 66 38 30 30 -14 32 -1 -27 -32 -97 8 -51 -6 -13 6 -15 38 71 45 110 -16 34 -53 73 23 31 25 -14 19 -29 -76 34 40 -3 -21 61 -9 127 -14 -12 126 47 10 71 37 -8 6 127 -36 41 -32 16 -17 15 -45 6 35 39 -63 47 23 -53 11 104 2 32 95 10 106 -38 -14 -120 35 22 93 21 77 85 -7 -36 33 5 -37 -33 29 28 -25 -86 -110 65 41 -7 -66 -3 49 11 -17 106 41 -29 -13 -3 13 1 37 56 -28 -29 -1 -35 62 2 -21 76 49 -122 -39 -3 -23 -66 88 -19 15 35 14 -29 -4 -41 32 -20 -13 -48 51 4 8 -22 -123 31 -17 19 8 2 -3 -110 8 2 55 23 -59 18 -49 4 -21 89 4 41 -16 -27 14 -12 -57 23 63 19 41 -12 5 -72 -32 -17 -27 -73 -42 22 86 -78 -125 -20 31 -12 -3 -51 13 -53 -102 -51 27 -21 13 12 57 -30 -82 6 -28 28 16 -69 -15 12 -18 45 35 52 10 -55 -122 -33 -29 8 -54 -8 -9 60 -49 55 -62 26 38 8 -22 31 -17 -22 -48 -18 22 0 33 68 36 -32 -2 -24 2 -27 120 -26 2 42 -28 -14 25 -20 -20 7 -10 -12 33 -67 -42 7 -128 -5 -7 10 -15 42 8 7 43 -1 -39 -39 -16 -45 -15 1 31 36 -7 -88 1 -64 21 -19 6 -40 -11 2 -28 -16 -24 -25 -11 -50 46 -1 61 -45 -15 62 +-65 -18 10 -5 -42 31 -1 77 22 -4 82 6 -64 -31 6 -7 89 -78 -119 -45 20 -93 64 17 -17 99 -39 -30 22 29 -55 92 23 33 60 43 68 115 -38 49 -8 86 61 -25 5 -59 -35 -6 -18 8 -6 28 37 89 -44 51 -22 -23 -20 -68 -38 104 12 4 40 13 87 71 -91 99 -29 -23 48 52 38 -2 -76 -45 -39 -28 -92 -2 -8 103 -27 24 77 68 -27 58 2 -26 62 22 -27 22 -33 -14 74 48 53 -13 45 94 13 -27 -4 -4 93 -10 -75 -19 9 94 -39 -10 30 80 39 -35 -61 -55 -39 -39 -65 12 67 -59 74 -19 53 40 -61 115 -61 58 -127 -7 -33 -44 58 3 46 29 -65 -1 104 -8 -18 7 -75 55 -13 82 42 -37 22 29 -82 3 -63 51 -31 37 45 48 31 -48 26 -7 -5 19 -60 83 -3 29 -50 -20 12 -128 -68 -24 18 -73 -56 29 32 -55 30 43 11 -5 93 -32 105 5 43 -6 66 15 -11 -38 70 -15 13 -66 -77 -40 -85 -44 -7 120 -31 46 -43 26 0 -13 -13 -45 -116 -49 -6 102 28 -19 -58 -10 19 -29 -27 -51 -8 -128 -56 -14 -127 1 -9 55 95 110 -4 17 103 -18 -38 25 43 -102 -20 48 -127 29 -18 48 56 -41 -36 -1 3 4 -46 -67 69 60 42 -12 0 20 -67 31 -110 3 93 -17 5 -91 -21 33 -15 15 -28 -61 -55 -60 -31 -40 71 -34 95 7 -12 84 8 7 10 93 52 27 37 77 5 -2 -28 -23 -1 110 127 82 -41 75 67 71 65 55 29 -82 29 70 87 -23 22 -14 23 -62 41 -39 -17 20 -16 33 -1 9 -25 -35 -27 -49 5 -97 -33 23 -8 59 56 12 -75 -26 -26 69 52 66 57 29 -18 -25 -11 25 -40 29 14 -52 -25 -85 -27 -24 -36 -74 -19 -116 -71 53 28 33 -37 58 8 -25 -18 95 7 -27 83 35 -23 -26 -10 -35 54 58 21 -78 68 10 47 41 -81 48 12 51 -18 20 -9 61 19 -26 16 -98 18 40 -11 -65 36 -67 40 33 -14 51 -26 -52 0 91 59 -66 93 37 -69 -127 -25 -35 -16 -110 -10 -69 -23 -54 5 -58 29 115 -29 -18 -28 -34 -25 -6 31 3 39 16 -32 1 2 70 -20 -24 -4 122 15 4 100 117 -64 16 22 40 -34 82 -18 15 37 94 23 8 99 50 -20 42 27 7 -23 -34 58 -64 -11 34 -23 43 48 104 84 -22 -63 7 23 27 -28 -93 19 -29 67 -69 9 -20 -98 6 38 31 0 22 35 9 2 16 7 16 48 -24 -86 27 -45 73 -116 26 16 -21 11 42 57 -125 46 11 52 4 -46 14 -69 16 69 30 6 -23 -82 -31 109 -39 -63 -30 -127 -30 -68 44 -89 -47 -24 -3 8 9 31 -43 -54 -40 -51 30 21 -63 15 6 -107 11 -88 -128 -22 -122 -17 67 71 4 94 -4 -36 -31 20 -22 -50 -5 22 37 -65 34 22 -44 7 39 57 67 -5 -9 65 21 -31 -99 28 105 -115 89 -59 1 66 -46 52 -57 18 -35 -47 31 -27 -24 7 -80 -33 57 54 12 -15 -4 -60 -81 9 -5 -23 41 63 -122 -77 3 -57 74 -5 -9 44 -102 39 18 -8 0 -31 61 18 -18 -87 -36 -31 33 -106 -13 52 -80 -8 -14 37 14 -34 -8 -22 -45 6 -58 13 8 59 7 16 6 12 -5 57 -53 -44 59 -13 -92 -28 18 -28 11 64 -51 -7 34 23 -72 38 56 -21 -91 -44 9 -25 52 24 -39 7 -35 11 11 -7 -24 13 -4 -23 24 24 -87 -17 -59 -11 43 22 -84 16 -39 6 3 72 -20 47 82 -10 -54 -11 -55 83 -28 -5 -29 67 60 -38 -83 -120 14 -46 56 14 69 4 -57 44 16 -8 15 -23 -35 -55 -65 -21 9 50 86 -54 69 124 114 -128 5 24 17 -46 -3 -105 29 91 14 -7 -32 -46 69 33 -12 78 -3 -25 19 27 38 85 33 -61 43 54 45 -93 30 47 9 -26 -68 -58 33 2 -61 -95 29 38 -19 -2 90 26 48 55 -48 12 42 50 23 -80 59 -10 75 -31 19 -125 46 -74 66 -6 44 -115 86 -67 0 2 -87 -37 -53 47 13 23 46 -70 10 -37 -45 -66 -2 -38 -9 -14 -74 -1 22 28 -36 -48 -1 -31 68 68 44 46 -63 1 89 44 114 21 2 17 -16 -61 -24 53 -38 -33 -4 25 39 -52 -61 -15 -72 -42 -41 71 -65 20 63 91 16 9 -38 13 -40 -39 25 42 48 1 31 -97 46 39 -17 64 -56 -1 -42 46 2 67 18 -15 25 -6 -61 -13 -45 24 0 -71 -128 -21 -83 -31 60 -25 40 -24 63 -50 -116 29 6 9 -38 36 39 28 -20 -17 34 38 -56 18 29 -75 -28 -25 50 12 46 32 21 -1 123 -50 16 -13 79 79 53 -32 -50 24 -1 -5 2 -6 -13 15 -125 1 19 -6 0 -44 85 9 20 -65 0 -23 -25 84 61 -4 87 39 69 36 40 32 16 -2 -8 52 -46 32 -6 9 -24 -8 9 -60 -34 27 -65 82 -9 106 96 -106 -49 -94 5 -12 -12 -19 -12 102 23 -72 -36 3 49 2 -39 101 -11 -27 -73 -102 -46 16 -102 -56 59 -111 88 92 32 113 97 -80 43 105 53 63 -40 24 -51 113 -54 -121 -41 127 9 22 73 127 77 -36 -45 -76 -73 3 14 58 4 39 58 43 -33 43 46 41 -43 -111 -82 -59 -28 -83 -123 -30 26 8 36 -15 -44 -4 127 49 -24 50 63 17 32 -56 38 38 22 -26 49 67 29 -25 51 8 30 -36 1 3 54 44 -29 -104 -104 -128 -3 114 2 -120 48 -114 6 41 64 35 68 23 -49 -6 12 -22 -52 -22 20 -126 -5 -11 67 -23 -68 -59 47 -35 -55 3 -10 25 -38 92 -28 -16 3 38 16 97 -59 -49 21 -127 5 104 45 -72 39 113 -21 115 3 -93 -16 -102 -42 17 43 -60 32 -71 78 62 -8 89 59 13 51 -4 20 -33 -3 -106 42 8 -18 105 -79 34 94 34 10 31 67 48 4 122 21 -46 24 22 1 48 59 11 60 14 5 23 3 -17 7 -43 -72 6 -1 -62 -87 -9 -28 -25 57 92 -36 -11 -38 31 19 46 -27 32 -11 4 35 -59 53 15 51 -33 -33 13 2 -24 -16 38 -50 -4 -12 -41 -117 -125 17 -116 -10 -55 -45 -32 32 -8 -50 -69 53 -55 49 28 -41 -9 29 91 98 -57 22 -24 -15 26 -20 8 57 21 -123 -32 86 -60 31 -38 52 58 -18 23 -47 127 -9 -59 -45 121 -44 24 -32 24 12 -53 56 98 39 71 10 55 -124 107 105 84 48 74 51 45 -37 -3 59 26 -14 27 -69 9 -32 71 -80 -42 10 62 7 -2 -36 81 5 -25 -8 33 -76 -36 3 -127 29 -44 -6 -45 98 -1 -58 -118 -99 -60 -4 -21 -15 -25 -124 -19 -44 -46 44 49 2 31 -54 64 -66 -19 23 -87 -69 -25 -12 88 53 -13 -27 77 55 21 -48 62 33 18 -71 6 1 -11 34 -40 -35 -20 45 5 -48 64 14 -32 -111 -18 -35 -68 24 -38 43 1 -97 -109 -43 -30 -123 42 60 24 -44 -82 -67 -9 -32 -34 -91 -25 -20 -54 35 -24 24 80 -34 -22 -70 22 -56 102 5 90 18 -39 7 -46 89 -32 -57 39 -33 31 -48 127 69 63 -30 24 -17 -127 30 28 -84 -17 85 20 41 -26 -12 61 7 95 39 96 10 -45 38 -25 -6 -20 -13 51 11 -50 11 54 -9 -10 33 -19 12 64 57 19 -76 -34 -38 51 -13 11 -21 108 -18 45 -19 -31 32 -4 19 49 48 -6 -120 112 55 -56 26 41 -105 20 16 -101 -22 -13 -14 49 -58 19 -102 -59 -32 56 -17 4 41 -82 40 6 51 -71 -6 58 -33 17 -24 -50 -64 101 -21 -80 23 90 -2 10 49 41 -53 -1 -13 110 -46 10 -26 13 113 -61 32 -31 -75 -94 -24 106 15 42 -24 -55 -14 -33 21 -48 -9 11 24 53 -42 0 16 125 -19 82 -1 -83 -72 -33 -36 -19 65 -35 43 -53 56 -14 -36 -16 -56 53 125 -22 20 -5 118 55 46 -95 -24 4 -60 -21 -13 21 -27 7 -32 -2 -17 -2 20 -23 79 114 -10 -18 -65 15 54 -11 108 84 -7 50 -35 31 -89 -12 23 -20 59 -21 -78 56 22 -12 50 24 -48 -24 40 -60 -60 31 -11 -17 97 102 -9 -77 2 32 5 28 -16 -62 34 -109 39 1 -17 36 0 28 6 49 -46 -127 36 -29 61 -35 43 -104 43 41 54 -20 44 -6 -17 -6 48 -8 -65 44 -7 22 8 -30 -62 -24 71 31 -17 -35 -40 19 87 -58 64 110 -48 -33 -4 -68 26 6 -42 126 -119 95 11 50 41 48 -13 -46 31 -17 -24 73 -69 -35 44 57 -61 78 70 86 -76 -44 -22 75 44 50 -41 12 -49 -10 56 114 44 61 -13 6 -24 -23 -2 14 -27 25 29 9 -26 -67 -39 4 47 -3 11 -23 -127 -95 -17 36 -34 -20 -38 12 -84 -45 65 62 23 6 -28 -57 7 -34 3 90 46 32 -68 -6 -39 -16 22 41 -12 -32 57 13 -13 74 4 65 -15 -13 -12 -62 -9 33 97 -50 9 -26 -31 38 14 26 31 39 71 37 -9 -76 -39 86 -9 -58 10 -4 -11 -31 -60 -92 -23 3 94 -8 75 73 0 -27 44 30 49 -41 -34 -61 -59 34 31 17 -41 25 -27 -70 11 7 -13 34 -127 72 19 -43 -66 -5 32 37 19 -55 -20 -2 -69 -44 -85 2 38 45 -2 54 -33 -49 -25 -4 -67 -111 85 -27 101 -5 -24 -102 -62 47 8 13 112 -72 86 37 24 -28 -25 22 61 -102 29 52 -21 -46 44 -11 -58 71 95 106 -10 2 -11 105 -23 15 -41 47 68 9 36 53 42 33 -75 107 -62 58 -43 -42 -11 5 -54 12 -82 39 -20 -80 12 -23 14 -107 33 14 12 -7 24 68 -27 73 -58 -31 -27 -25 16 62 32 -20 -34 -66 30 -21 -8 20 -8 -43 -16 31 -58 30 -7 7 24 -105 -44 23 78 26 75 -97 9 -1 -53 8 -13 -37 -27 -1 6 -85 -2 17 80 -38 -20 0 42 -7 -71 3 -27 -31 7 38 13 -35 -18 -72 -47 26 -14 -72 -57 4 41 -21 17 -16 -38 -38 6 -74 -28 -89 77 -6 43 64 -42 -55 2 17 -22 -3 -9 -103 45 -13 6 28 -63 -77 13 -80 115 65 11 -22 -61 -45 25 2 7 80 60 -5 48 3 -48 -5 24 -52 -57 -7 -85 30 43 -15 28 -40 -33 36 -8 -94 -40 -34 -34 4 -46 -2 15 -84 -5 3 8 -5 -19 40 -33 -96 38 -2 -28 -13 -26 -76 46 -32 22 66 92 18 -45 7 12 -49 -42 -12 2 7 38 -6 -85 11 -22 -20 31 -64 -21 -31 76 46 -41 -92 15 -46 -81 -124 -32 -31 -21 -56 -32 -42 49 60 -72 30 31 24 -14 23 13 -41 -2 35 19 81 -28 -77 -54 46 -38 -126 16 21 -65 25 -65 -5 -13 43 87 -15 -63 27 94 -117 -6 5 -125 -40 27 -98 41 16 3 18 -62 45 -33 -92 12 18 23 -96 -31 76 69 -9 -70 -51 75 18 -17 5 -83 -44 42 31 49 33 -56 -72 -37 -31 -10 -35 -85 -68 -63 -11 -70 49 21 119 24 -113 -25 -52 47 -5 38 43 63 79 -40 23 127 25 -47 -21 62 -19 -49 -35 -77 -77 37 -32 -20 -45 -80 10 -104 -22 -22 -70 32 -6 -64 -55 -5 37 17 -16 -46 34 -12 -10 66 -49 -51 -16 -29 -15 -33 -69 32 -20 -39 11 -41 67 2 -26 -96 -18 61 -31 -38 9 -40 9 2 -31 -33 -25 9 47 19 15 123 66 -48 67 -64 70 -22 0 -10 29 -42 -56 6 27 -6 30 -66 -10 54 -15 57 -45 26 16 19 -4 -74 -28 53 77 68 12 111 -27 23 59 -32 -115 44 -15 4 9 41 -46 31 28 15 -13 -127 12 62 -19 -71 2 22 -19 41 -15 -65 52 -48 -51 -30 16 -44 -14 27 -2 -46 39 -37 18 -29 -36 92 -37 24 -128 -7 -20 -82 -88 10 127 -9 0 -11 42 45 16 -44 106 -9 -11 -14 -109 34 25 33 -49 37 -9 -24 23 -50 -51 -71 -10 -18 -9 40 -74 -4 30 -30 -6 -11 -92 -51 9 -37 27 -55 18 26 32 -64 45 -17 -69 41 27 87 -2 -30 -28 74 13 32 -16 -28 -15 -26 52 10 -48 38 -79 -1 10 30 48 12 58 -37 56 -21 67 69 -41 66 40 77 -1 -25 4 -46 17 14 84 -5 37 29 20 -68 8 -17 49 10 19 -14 -15 -8 -37 -12 -20 -40 -3 -51 -10 35 -22 0 63 127 -14 31 -14 -28 -46 -34 -63 8 -14 -117 32 -9 41 45 19 -17 33 12 -18 26 -12 -19 -16 46 38 16 -60 -19 43 16 63 27 54 -81 28 -2 19 -65 29 -54 119 -13 -6 -29 39 46 -45 9 12 -25 -8 -35 -36 50 -56 -56 -40 -128 4 -65 1 11 -128 -40 -3 -6 26 57 1 58 19 7 -30 26 74 -44 -13 22 -12 -25 -10 -49 42 -22 5 40 -13 -4 95 24 14 -16 26 112 79 17 85 -83 -86 15 36 25 103 40 -10 -7 30 22 -41 32 -15 47 -16 13 54 9 57 -4 -43 -27 79 76 57 60 0 41 -126 55 61 -67 -25 -20 119 120 -37 27 -47 -3 6 -36 57 16 95 35 47 12 -116 39 11 72 -2 6 14 -63 39 72 21 64 26 -87 108 -6 -47 19 9 44 -2 -26 -14 120 -21 -40 18 -12 41 15 37 26 26 31 73 17 4 26 51 -5 2 68 32 60 68 -91 16 30 -125 -18 11 -45 -66 -10 -58 -3 -95 -128 2 42 -71 -29 -27 51 27 -63 -4 52 15 -81 29 105 24 -84 8 13 -1 16 91 -49 -11 -20 33 -28 96 -97 94 28 -27 97 43 51 90 41 -64 34 11 30 64 6 117 0 -32 -125 -106 42 5 28 116 -18 26 60 106 -41 41 81 -31 43 87 -20 39 40 12 13 -19 -23 32 -66 72 -69 26 2 71 -110 -63 -54 -13 4 27 41 0 -69 25 26 30 -43 21 110 -37 -121 13 9 29 23 -58 12 -17 58 67 -83 -69 48 127 73 62 6 40 61 -16 -39 28 -68 -3 23 44 22 -93 99 54 18 55 -34 -60 33 18 6 -8 120 -2 -68 99 -85 -33 -102 29 -3 -43 -18 12 37 2 -27 -4 -25 -18 -38 46 65 -33 13 -62 -94 -36 -46 -57 5 40 13 -72 -10 -111 49 127 15 51 49 -29 46 49 -124 34 -28 -49 -4 -33 -37 -42 -49 23 89 1 44 -19 92 78 -14 12 39 -9 4 -12 47 -94 -28 -126 73 53 40 29 -60 43 -100 -7 -8 -14 41 8 37 20 -76 -56 -90 0 60 -15 13 127 -1 -25 -69 33 66 126 43 -23 -42 43 -27 25 47 -2 39 -34 -67 65 50 26 16 -18 38 54 45 9 -121 54 -12 -33 71 28 13 20 -14 -5 27 121 7 78 109 33 8 -25 -21 -20 55 39 -22 -39 -8 -11 -62 47 -38 38 -55 23 45 67 29 -41 -13 -4 -1 -106 -30 119 -27 28 3 -34 87 -41 106 18 108 42 31 -2 116 -41 86 -53 -35 -35 6 46 -3 43 29 -53 -52 75 -58 -1 -10 50 -3 -16 -18 -107 27 19 8 -49 -55 37 -81 -34 14 126 50 114 28 46 24 -62 1 -28 3 -94 -36 35 -25 31 13 68 26 14 86 -38 -29 -1 -35 -101 -16 -16 47 11 -39 -72 49 -12 3 -64 -12 9 -100 25 6 -33 -4 6 95 24 3 -31 -44 98 -21 -93 -85 -44 -7 -127 25 127 107 60 -126 -7 -9 -7 -2 13 -7 -69 -12 -46 -69 9 -48 76 -11 -10 31 16 -10 67 14 31 -44 -35 30 41 44 -39 -48 -21 35 43 -93 -27 -3 54 31 -78 17 -14 -64 -18 -76 -18 -68 10 -5 -42 19 6 -21 0 60 5 33 4 -40 -36 109 84 42 22 -79 7 -38 -9 26 -48 -106 31 -32 19 25 -18 47 30 22 127 -12 14 4 64 -3 -26 90 28 -27 -60 -43 46 66 -52 127 -50 68 28 -47 -8 36 48 -53 32 1 47 31 -16 -27 120 -26 -21 37 -20 3 39 -43 -77 60 113 -14 96 -66 -6 85 -20 6 6 -45 -7 39 -66 -6 -3 -38 -35 6 12 -38 -48 51 30 -40 3 -50 46 33 -18 -25 -31 -23 24 121 -1 -12 -19 70 -37 60 -18 -47 -20 -33 -13 36 4 0 -9 -42 2 16 -21 -21 -15 42 -67 -18 -35 -72 -40 -36 -10 -16 -36 -126 81 -61 67 14 -49 14 -32 2 19 -22 -6 -22 -65 51 -16 -100 -7 12 -3 72 4 -51 36 74 -1 73 -20 -53 18 62 70 -34 8 16 -21 -51 -97 21 -21 54 50 -22 29 -38 37 10 -7 45 -43 41 -19 -36 1 41 17 53 68 15 4 86 -9 75 -21 -28 43 -72 10 -16 42 20 -33 -3 -45 -49 4 -30 23 7 75 26 -31 -28 51 -16 -2 5 26 -3 -46 -3 -28 -28 -61 10 -76 56 -40 -43 21 2 -15 -10 9 -53 82 66 -77 28 -37 -28 -2 -7 -18 -6 48 34 -21 19 55 -36 -71 72 -18 8 -1 26 46 -27 34 -7 1 -11 106 23 0 -8 26 32 3 -23 -62 7 -55 40 -55 6 -58 17 15 67 8 82 114 66 32 5 -35 -15 -2 -13 -92 20 -46 -98 16 38 -16 -110 -28 -52 -79 -56 60 5 83 -57 18 -28 -28 20 89 7 112 38 23 -15 62 61 6 16 -51 -7 -16 15 63 27 65 -17 -95 47 -43 77 -28 -47 -67 -18 50 -14 -48 -73 28 76 18 3 -8 40 -12 108 7 30 -36 23 27 24 79 -59 -55 39 -60 -16 52 48 -23 -25 56 -58 -61 -24 -20 27 -10 35 -16 125 -13 -38 -8 -6 -117 -70 -58 77 -22 -19 -1 63 -43 -30 -14 -47 -4 -76 21 -53 -62 -45 -108 9 -81 -47 56 -34 76 42 -29 -102 -12 -38 -37 -12 -4 8 -42 -1 -19 -12 -72 -2 -12 -44 -12 13 41 -3 55 41 -13 16 -37 -68 54 8 41 19 12 -36 -6 22 3 75 -18 -59 -77 -79 -49 34 -29 0 22 -45 -36 -55 5 5 63 75 74 -35 47 1 -27 -11 -96 24 64 -43 -34 65 3 46 12 -22 -39 26 -115 42 0 -65 -8 25 -48 53 -53 -21 73 61 -13 -3 -67 21 -20 -38 -127 66 41 -5 29 -31 -59 11 -17 49 -7 -36 -53 24 -47 -60 54 83 0 13 -29 27 39 29 8 9 -15 -31 15 7 -8 1 36 -19 7 -14 -14 75 36 -56 -54 -34 40 26 -75 59 -27 53 20 16 0 -14 -39 -106 -17 -82 53 -23 -18 -104 18 23 -99 -5 17 -9 5 -44 -71 -39 -16 -51 93 81 -72 -20 -4 -21 18 63 0 -65 34 32 -9 -63 13 52 -16 2 -19 53 -59 34 44 17 -5 7 -29 -31 -111 2 72 39 17 15 6 -15 -21 -53 20 82 49 -7 68 10 18 -2 110 -11 -56 49 -106 -35 -21 12 0 21 -27 95 76 -61 37 33 -28 10 52 -52 -57 41 -63 14 -1 -13 -55 -29 -10 64 45 -5 -20 -9 -3 -68 -43 28 14 1 27 -26 81 31 83 -14 40 -2 106 3 -7 50 -8 -38 -40 -9 -26 -98 -128 -66 14 -65 71 -9 -17 -3 20 -128 -39 -44 -25 -60 -24 -65 -44 20 -74 67 -68 -38 -87 21 -59 -16 -58 62 10 -29 126 5 -48 -10 52 62 17 -52 64 -66 -46 -23 -11 24 67 -19 33 -27 -29 -15 -7 -22 56 -5 -33 19 11 40 -11 68 59 -53 -39 -53 9 7 6 13 78 -120 49 46 -41 97 -88 64 -125 -19 -41 59 -44 -12 3 -95 61 -25 47 -82 40 51 -118 125 11 67 -123 -77 86 46 14 -35 29 -84 16 68 -48 51 55 127 -17 -4 104 -85 66 -25 -42 58 42 62 11 32 33 73 -18 3 -28 60 -10 33 -57 -25 -80 -35 64 71 -24 -32 -1 -10 -35 -1 -1 21 -47 6 -63 -7 -11 -30 63 -28 -55 9 -119 -4 -24 5 102 -2 9 64 8 -1 -71 -33 54 54 -34 38 66 -42 28 46 -74 -48 24 22 18 43 -35 -108 22 -59 17 -3 45 54 -45 -50 36 -41 -77 -17 -55 -9 29 16 4 18 -41 22 1 74 -36 -8 -73 -31 52 -68 -40 14 15 61 26 -31 12 47 -22 -39 82 125 -19 -11 -76 -57 -122 -1 21 -26 4 7 -61 12 18 -20 -71 57 -3 58 -97 -63 41 33 16 -6 18 3 8 5 14 8 -51 -1 -68 1 67 -65 -91 50 -75 33 -60 10 -12 -12 36 110 -18 -124 -50 121 -116 -41 -40 -53 38 48 -31 8 39 -92 -48 41 -35 33 23 43 84 63 8 10 17 68 4 72 -35 55 -28 -55 28 119 -5 82 10 -30 -32 -21 46 28 30 -4 11 31 -8 34 -77 -24 -52 29 7 84 -50 31 -27 -103 -13 -20 2 -63 58 58 85 97 -22 -69 -18 0 -63 -8 -3 -65 42 -47 -9 -8 55 -61 -40 26 39 73 73 -44 62 50 41 47 -12 127 -36 103 127 -4 31 35 83 -2 4 -117 41 -39 44 -10 0 -13 -21 -128 124 -126 -71 -10 0 24 -20 19 -30 78 -63 43 79 -62 84 48 122 50 113 30 96 -19 100 -21 -22 56 81 34 87 73 29 55 106 22 26 -105 -54 17 -87 -21 -101 127 -27 -5 -29 -43 53 8 19 8 13 43 -56 -52 2 6 6 -23 33 60 67 25 15 41 -13 -34 16 -15 72 105 96 -59 -17 40 -41 -39 39 11 2 45 -26 -52 -66 34 -27 -117 -53 24 39 -121 -53 53 44 -14 21 -90 -114 -81 -59 -11 -102 -28 41 57 -29 13 41 40 85 -125 -96 -62 -18 1 -41 82 -62 25 -73 -79 -74 44 30 -122 115 -21 90 36 65 73 14 -15 -25 68 -122 -9 -24 16 -48 57 40 -24 -70 11 25 -38 -32 -54 -98 -67 14 113 -16 -21 26 56 -4 -33 3 1 34 21 -6 -17 -19 48 22 24 -83 53 27 49 41 -128 -103 17 51 -23 -112 16 58 -30 22 1 40 -23 -3 2 -23 64 19 -9 -54 -98 -68 -25 23 6 38 -53 -10 -120 25 44 65 -23 61 -105 9 100 27 15 -12 30 -43 -8 84 61 65 51 -25 -69 -34 -7 -4 48 -93 42 -70 -86 -2 118 -19 4 -11 17 67 36 12 -7 -28 -14 30 -95 36 -10 38 63 -49 -124 54 -12 36 72 -16 -5 -96 12 -20 42 -3 -127 -100 -19 -54 -3 -36 8 17 82 58 -37 -35 12 -78 23 -73 19 66 -88 15 27 -118 48 -23 10 -7 -40 10 43 14 -20 61 -13 -50 -18 49 -32 -74 43 11 100 -32 32 44 7 -85 7 -2 -24 30 4 97 -24 -51 12 19 21 -55 -59 28 -46 -3 -66 42 19 24 55 -30 37 -78 45 -33 -85 -36 -23 44 28 -38 67 20 10 -20 -103 -9 -36 70 -30 -63 62 81 -23 -14 11 -38 33 -48 -29 -18 26 16 14 2 47 55 -96 32 -116 -24 24 -5 18 -84 75 -22 -29 -1 -22 -7 127 -108 -2 -20 -55 -39 -48 -3 42 -66 -28 -128 -35 -19 85 18 -18 -10 19 -43 -2 61 -39 -33 39 -128 -36 -42 -75 -52 -80 59 38 69 26 117 100 -8 35 63 77 -24 76 45 -30 32 33 6 -29 39 49 -39 -23 44 22 -71 36 21 80 -7 -34 20 -25 -77 18 -14 11 59 -73 43 -3 56 36 -31 -12 17 -49 -31 -16 -4 24 -19 -55 -65 -6 33 72 71 2 -78 67 -41 49 89 -13 20 10 46 -19 30 -7 -103 31 -41 -11 84 2 75 -36 -1 -97 -63 32 -21 -25 65 60 -57 24 -21 -44 2 20 20 63 16 -20 0 -36 70 -45 -60 -17 -27 28 -55 53 -45 41 -42 57 -65 -13 25 68 12 64 -32 -43 -32 18 -50 -99 -43 86 -53 -45 4 -14 12 -55 -26 -44 -26 59 35 -39 -3 -29 58 -35 65 -8 65 -19 25 -86 62 25 35 -63 29 41 94 97 -2 7 -10 -66 -46 -54 47 57 2 5 -52 36 10 29 37 -22 -11 91 -64 7 69 10 47 -38 34 -73 -34 9 -14 54 -90 39 19 20 33 6 -32 14 -70 50 -4 -5 9 46 -72 54 -7 -34 -33 49 -110 -67 5 47 42 -6 -72 -47 18 -33 55 47 -71 -13 -6 -28 46 -7 45 -46 11 47 34 -18 -4 43 -27 24 5 -66 8 -49 -40 1 3 43 -34 27 -2 -41 -127 30 70 2 -37 16 -58 33 24 51 82 100 -39 17 6 -27 -18 -86 98 113 -37 -80 3 -44 35 8 -36 16 102 5 27 2 -95 66 -40 87 -35 -100 -50 21 40 -26 118 32 -37 21 -77 -39 10 -14 20 94 -111 -87 107 32 4 -12 50 -8 -60 124 10 16 -67 -49 52 -31 13 2 63 59 30 3 -25 -57 16 0 92 -31 39 -77 0 67 -45 28 -45 -36 -61 -42 9 -73 -29 31 -10 -72 -11 21 -74 -11 -1 57 7 -32 12 54 -16 -5 24 -69 -90 -74 -5 0 91 39 -25 -57 57 10 86 -44 -5 -126 3 -59 -52 23 -38 14 26 29 16 77 -96 -57 -79 -29 -44 58 44 -85 50 -122 -54 -14 51 31 38 70 -20 -97 -7 33 -12 -127 -46 -12 -6 -3 14 -40 -64 -24 37 57 -107 -28 40 18 31 -27 60 24 -34 6 1 24 24 -57 -25 -4 -108 -28 -11 46 122 -126 -27 -6 118 38 114 44 -66 -20 9 19 101 30 11 -34 18 -82 -2 1 49 96 117 68 24 -79 40 16 45 34 -77 -42 -68 -71 -13 89 63 69 -17 -21 -20 -118 39 -30 -9 11 -78 -53 3 41 -2 -11 -90 17 74 -56 -27 -128 32 -3 45 -10 38 13 16 28 -10 123 -26 59 -70 -101 26 23 -69 -45 34 39 -8 2 30 7 31 45 46 -19 63 38 -52 96 -38 15 21 56 19 41 -45 67 -9 2 31 4 20 30 -20 -45 32 7 4 9 33 -11 -40 -13 28 -3 -38 -23 119 -16 -31 -31 -97 -51 13 3 29 -8 -25 -101 35 -25 -16 17 9 -41 25 122 81 -29 42 -30 -2 -43 -64 31 -14 -24 48 73 -35 -24 88 69 50 -44 19 43 -70 -73 90 -99 68 95 50 -12 0 -6 -44 -10 40 -28 28 79 -12 31 29 -24 4 -12 122 124 54 -35 -27 -96 -11 23 -26 18 -24 -72 119 -60 72 69 -17 -41 51 22 -40 -32 -6 11 -108 44 -56 18 23 4 -124 36 -57 66 -33 -5 -100 -76 -58 -56 -2 102 17 -7 -3 127 11 13 57 15 42 65 -30 -71 -42 64 -16 69 -88 -45 42 -36 -109 27 98 -10 46 -40 -16 44 26 -44 16 -19 55 -4 17 -101 49 -117 32 -55 -88 24 -69 2 -29 -123 -24 66 36 70 28 -87 14 -47 80 127 35 28 44 -8 47 -48 63 -3 -10 43 15 -31 -31 -122 -44 -15 12 -41 -57 -17 34 117 6 23 52 58 22 106 -3 -78 -21 81 -6 9 15 70 27 -9 -9 75 -61 18 22 72 40 19 16 1 13 91 77 2 -40 -108 -30 39 -8 -32 -97 19 -7 -11 51 36 40 -21 41 38 -20 30 -19 -19 16 5 38 -80 19 24 73 81 -24 36 51 34 46 -11 41 62 33 -25 63 -36 63 -58 -74 -3 -10 65 -18 -45 -127 -15 27 14 88 -103 -7 -47 -21 9 -9 12 79 -5 -16 0 8 85 18 -47 -22 -75 -20 -53 -34 -13 -71 -30 0 32 -30 -38 92 76 -20 -60 74 -45 -21 -16 -22 4 -98 -71 -40 102 15 9 25 -12 -23 -20 -4 12 127 -2 22 127 10 -64 9 -3 0 53 15 36 -4 55 -35 41 -75 -34 -32 15 13 -5 42 0 -69 -34 -9 7 -27 1 -28 45 -103 -29 -32 62 -52 -15 68 -59 26 47 -24 -19 -15 49 8 59 -23 33 68 57 32 26 -19 -39 -5 -59 -11 -13 -8 11 -2 -4 -5 -67 -8 -69 -36 -94 -51 -64 -32 43 32 32 33 -92 111 -8 -9 -17 -80 -19 -3 -70 9 37 -12 -65 -19 -38 25 -59 -6 -18 -41 -11 62 -62 -99 -48 -121 -27 -21 -7 -7 40 -44 -49 -28 19 -61 -22 -7 20 -30 -61 29 11 -127 -127 -14 8 -48 25 14 26 14 -24 -22 84 61 -23 -66 -71 -20 -69 16 -8 -5 -98 -10 -46 -120 32 -70 -48 0 -41 67 6 46 34 65 -40 73 60 40 6 80 -53 12 126 59 0 -1 9 85 61 17 -51 -8 -69 118 38 70 77 -127 99 127 44 78 62 10 -17 15 -3 32 29 38 -40 23 -56 44 -33 56 65 -30 10 46 -35 -35 -24 14 -58 8 16 -30 45 -126 -73 -50 -51 1 -23 63 60 -58 -47 62 -4 -30 -37 21 21 -68 -29 5 -41 -75 54 -60 -38 -60 30 -27 -40 -84 -2 55 -43 -6 -37 -7 -35 60 24 -18 -33 13 50 -42 -24 -36 28 -36 -79 -8 -24 32 35 8 46 -125 -19 27 -22 3 -110 -19 -17 -56 44 13 41 -23 -60 -74 8 -33 57 20 -52 21 0 -13 -57 10 8 -71 76 96 -76 96 5 55 19 -36 49 23 47 47 -6 -36 81 25 -29 79 56 -5 11 65 -50 26 -3 -46 16 3 1 -65 -21 -55 19 27 46 3 -6 -125 23 -52 -2 -82 -73 -4 21 20 122 -76 12 -44 10 -111 -65 -14 -14 34 -14 -7 66 24 35 95 -27 -6 13 -4 -48 -63 -25 81 40 -90 -41 -14 61 69 -42 -13 21 -34 -46 17 -81 -29 3 52 36 -29 -12 41 0 -29 23 -76 45 -41 -2 -66 26 30 -52 -56 26 -24 -83 -39 16 -47 -70 -11 -107 -4 -77 21 -95 -51 -86 -126 -5 -5 22 -3 39 53 38 -94 -30 20 36 61 -20 6 -58 -6 40 -39 81 35 -102 -26 6 -22 8 -39 -29 -19 -33 -57 66 51 -21 107 115 49 -15 -83 26 49 22 72 -41 61 -24 -1 66 4 11 -17 -11 36 61 -41 37 95 60 -56 80 15 -32 18 -44 -4 -2 -9 34 -78 -46 121 6 -20 -49 26 -3 59 -38 11 47 11 14 -58 -8 -79 27 -16 63 18 100 -45 -14 -14 -20 11 67 49 -65 -39 -87 5 84 0 93 17 -85 -107 -16 -110 113 -59 65 55 22 -37 79 35 56 -114 93 2 -18 -18 21 26 -68 29 -50 53 2 -32 9 19 22 -29 -11 32 -14 -53 -9 69 -104 -10 -13 4 44 17 41 7 -127 -84 13 -90 -78 -32 -73 -30 27 42 61 39 31 -19 -81 17 28 -25 -25 33 -91 23 127 20 -58 35 84 -23 -62 38 -11 15 6 18 -18 -31 6 7 37 127 1 69 -31 -17 98 -59 26 5 22 -6 20 -5 -61 -45 5 39 18 81 -14 56 82 -36 57 42 -62 -12 33 40 -29 6 -2 17 86 -11 50 45 -6 87 -9 16 -12 29 101 13 -40 -21 88 -62 -47 27 -31 -118 43 -64 56 -1 37 29 -54 63 14 32 -73 -51 -92 -56 101 -5 127 35 -36 58 13 -26 -33 25 69 20 -31 32 71 -24 -50 21 14 -25 65 -5 5 112 -26 -17 37 37 27 -112 8 40 -25 -16 -15 -16 -83 -11 40 -5 89 -67 -31 120 -64 -6 -55 15 -39 29 40 81 -23 67 11 -4 28 -40 -35 -30 -9 64 48 -37 -47 17 -52 76 4 50 -11 -95 -65 1 -100 40 19 -28 -78 11 96 -88 53 -1 4 37 -73 2 -59 99 -5 -9 -4 -66 123 -53 -1 8 -128 -7 24 16 -54 -17 10 -23 13 88 44 43 -86 28 74 17 -58 -24 46 -15 1 19 53 86 -30 -52 2 -86 26 64 -23 5 -53 11 -15 -18 -128 3 -92 -45 121 -4 -7 -33 -40 24 6 -8 -95 -120 -18 36 48 -22 9 117 120 19 -18 14 -31 36 -18 2 35 -56 -15 31 0 22 92 -2 -110 36 117 59 -54 21 -33 -1 44 62 61 -20 -27 -15 120 31 127 -4 -110 -21 59 32 -10 28 -2 15 8 -107 17 -95 -39 -17 -115 6 23 126 41 -2 24 -23 -1 1 81 -22 102 57 12 -43 -62 -40 -3 -83 121 29 -65 -64 62 69 84 -27 25 16 26 -15 68 -56 -12 8 -35 23 -29 -19 -5 -44 -40 -85 11 -22 7 -26 -11 50 -36 79 -38 -23 -6 38 -1 37 43 -20 -15 43 -54 -59 99 -52 -9 -3 27 -16 32 7 -16 10 -45 0 25 37 63 63 -9 -38 -42 -27 38 -20 -38 -107 50 -47 39 67 68 29 -43 -11 -42 85 -49 126 5 -3 -13 -24 30 81 50 47 5 -54 4 7 -51 30 4 -3 -1 -66 -55 -116 -40 16 50 57 -81 -73 24 -26 47 26 71 10 -111 91 61 48 -44 -104 15 0 -6 41 -41 3 -48 -2 -19 -23 -43 123 42 -3 17 127 61 -31 19 -100 34 41 -16 -33 24 90 23 -88 122 -22 -55 35 -23 -25 63 -5 90 1 66 -13 -20 22 -48 22 62 19 53 -4 40 -3 -76 -3 -4 -14 -10 13 -39 122 11 19 -37 -19 44 53 65 51 45 -9 9 -20 79 -36 9 12 45 11 -44 74 -15 58 8 39 -49 28 15 -40 -95 41 -12 51 5 10 -8 22 -45 -15 56 -15 5 -86 64 -45 -25 -18 -55 11 18 30 106 -100 8 -78 62 3 7 -20 49 36 -26 17 23 -23 71 22 -86 -65 -70 -11 -12 -71 -2 -13 33 -36 -86 -11 19 25 -40 -69 -27 16 -11 36 3 -19 64 -21 33 -22 0 11 4 29 -81 61 70 36 -24 18 60 75 36 20 51 119 -10 13 82 -57 -58 -42 46 83 26 10 -25 22 55 -75 -1 80 -23 -34 -5 53 30 50 90 29 73 14 30 32 28 53 26 -23 -2 -9 -76 -18 -5 12 28 -47 91 72 -72 22 103 1 -23 47 -1 3 2 -42 30 60 -12 17 56 -11 -56 -20 6 -48 62 -11 -107 -4 13 103 39 25 1 -24 10 24 70 -51 41 58 -12 -38 68 -59 -20 2 -7 25 3 -57 2 11 8 -4 4 14 -102 -10 -31 -58 -23 -27 58 43 -23 -74 47 76 59 82 30 -39 -7 -19 49 -41 24 17 59 7 43 6 -18 -81 -82 66 60 51 15 -107 -116 0 15 66 -23 -5 57 -1 2 -4 50 59 -102 -21 8 -38 -111 62 25 41 48 -52 119 -11 -34 3 -52 -56 83 1 -33 -45 75 13 93 86 -2 -57 -57 112 -13 42 24 23 84 -67 -38 -9 -58 121 33 57 5 -50 70 48 19 -51 81 -12 10 -27 5 15 -29 -64 -11 -21 11 -74 16 38 14 -3 0 2 77 1 62 37 10 24 -59 4 -95 -39 45 -76 -3 8 21 -27 -48 -9 71 -100 -82 -34 45 -1 -19 12 -77 78 -73 57 -73 35 -18 9 -12 17 -10 103 31 114 28 10 -12 -62 -22 -22 -6 -8 119 0 32 58 -78 13 -28 36 98 -5 -43 -31 -8 -11 -40 -38 -7 50 -59 57 -23 -36 -30 +36 -16 99 -2 2 36 22 -5 11 -1 49 -45 19 1 -11 29 109 -2 63 -31 14 44 16 48 19 58 -22 24 62 49 -78 45 73 32 8 91 20 18 -28 62 -8 39 61 -64 40 -50 80 78 24 -27 -24 11 -4 -14 -30 23 5 -23 27 0 -41 -13 -32 21 19 -9 1 -32 29 -16 -16 -17 10 46 23 -19 18 1 -13 2 -22 -5 38 48 -16 -4 -26 8 24 39 16 14 15 10 -18 18 28 -44 12 18 -4 -33 -35 25 14 18 37 9 -11 -84 -33 -31 -8 -18 10 21 -38 -19 -11 1 -66 -12 26 10 -6 -8 28 19 -17 -17 -9 -27 31 18 9 10 -12 -3 -10 51 -8 -11 -43 -17 +114 96 0 +13 9 -28 -63 23 -8 37 1 -40 14 -14 -2 -47 7 32 -33 -9 19 26 81 -15 26 36 47 22 -26 27 -3 9 -22 34 -57 -18 71 -3 38 -42 -34 -10 47 -15 9 6 5 -77 12 -37 51 -20 2 28 18 27 -33 -38 15 -29 -8 43 18 4 -72 22 -18 44 -22 27 22 -7 21 4 -40 16 -9 18 -2 85 10 -18 74 14 -23 5 -22 4 21 14 -25 -1 -5 -2 42 -29 10 -53 -23 13 33 -12 28 -18 41 45 7 3 -35 13 -39 52 33 35 -44 1 -31 -7 -22 2 11 -10 -19 -20 26 12 -32 42 5 -6 -7 9 25 19 -17 15 34 -20 5 2 2 28 14 -36 35 14 17 24 -19 0 -18 2 40 0 -10 0 21 41 1 24 4 48 18 35 7 -14 6 -14 20 26 -8 32 15 -5 -1 -28 -27 -12 14 20 28 14 30 3 8 25 -34 21 43 -17 19 -17 4 -10 36 -24 -20 10 -5 -4 -3 10 3 8 15 6 14 -8 16 14 19 3 12 18 2 -6 4 1 19 5 -17 14 -10 -19 -20 -6 3 9 20 -7 14 -11 -4 -19 -2 -44 -14 0 22 10 -16 34 -21 2 -7 -8 -40 -21 -26 -5 -2 20 18 -16 -18 -14 -6 -2 2 5 25 12 -6 -6 18 -7 6 8 -28 -22 -36 2 -23 -24 10 2 39 15 0 -14 -2 -32 -18 -33 34 -13 16 41 10 33 16 -15 16 -5 -7 13 -3 6 -23 35 -34 -15 -3 10 31 -16 45 29 -13 -30 -55 6 32 23 -12 7 19 3 -39 -41 77 48 -7 -9 52 -19 -10 -3 -38 -30 9 -38 -20 19 3 53 -25 -25 20 32 0 8 -2 -19 42 20 -33 -35 -45 -2 3 54 24 66 -68 22 -79 31 27 11 42 -17 27 9 21 -6 -6 34 -9 -33 44 0 39 -25 96 -54 -8 -10 56 -30 -31 28 31 21 15 92 -59 -1 25 8 14 -10 -1 -28 -12 0 4 7 42 -21 -14 55 24 -26 12 66 3 -10 26 -5 -3 11 46 -28 -14 38 -22 10 -7 -3 -50 40 12 22 1 24 30 -16 32 11 -24 -11 -14 11 -17 29 26 -7 -17 27 -28 4 -9 6 7 -26 -30 8 -24 -34 31 5 17 0 -27 -4 29 6 -22 4 38 19 -19 19 34 55 1 -18 -9 -19 -35 -21 15 37 10 4 -44 15 -2 27 -3 12 34 -21 -1 38 30 6 -3 -54 33 -5 -6 -8 -24 6 -19 -4 -5 1 27 10 31 -26 -3 -25 -33 32 -10 16 24 25 -39 20 -3 -25 -53 45 12 -32 -30 7 0 -5 -20 -21 -18 -1 29 -12 -13 9 14 -10 21 -2 -25 11 24 -13 5 -16 -12 9 14 -4 -46 -12 6 -13 -13 6 -30 -1 -27 -16 19 -20 -6 -14 28 25 15 24 -9 9 5 4 27 0 16 22 -21 16 17 -30 36 -21 -13 -28 27 -78 23 -17 -95 -26 54 -30 -44 5 -14 -43 -74 48 -24 55 -5 -2 106 -77 -29 -59 -21 -12 14 45 18 -91 42 -2 12 -25 13 1 -5 -31 3 -2 40 -72 18 16 -13 35 -4 -43 -13 -17 5 40 -5 -50 -16 -121 -25 35 -35 4 -23 22 -9 115 -19 58 72 -113 -32 29 -27 29 -34 -31 -8 -14 -44 -50 25 -8 -15 0 -57 -8 -84 44 -15 10 -75 -26 -63 -71 2 -15 -71 12 -26 -60 55 -1 66 2 5 -23 37 35 -78 44 31 80 -8 -53 28 15 7 -22 -48 5 -41 -5 37 51 1 39 0 13 42 19 17 -1 30 25 25 14 -16 -1 10 -24 4 -46 29 -47 10 47 -17 20 -44 11 -24 4 56 23 42 19 19 33 39 0 10 46 52 -66 91 38 11 33 30 4 21 36 -20 26 48 27 19 41 54 4 -7 7 -34 36 25 40 -65 28 22 61 31 -23 21 12 45 -6 -15 -16 -22 18 15 -18 18 0 17 16 55 11 34 -48 16 27 -5 -27 -14 -12 -45 -11 -7 23 7 -67 12 52 23 -13 -1 -52 -38 10 10 -46 -4 -13 -11 -40 6 0 35 11 11 4 -17 -27 -8 8 -8 -18 -17 27 -47 -7 -44 -5 -31 -4 25 15 54 -46 0 5 -10 4 -24 11 -32 -1 -2 5 -10 13 -17 24 -1 44 -18 10 -20 -5 2 -6 -1 -26 29 27 22 45 11 26 7 -14 -21 -41 14 18 -25 -34 30 -1 -29 -6 -21 -36 -26 -19 -21 20 0 -18 -39 19 -16 26 26 -18 9 -22 -18 0 -9 -6 -8 27 23 -30 -4 10 -6 11 11 -8 -17 -4 5 -8 28 6 -29 -15 -28 -15 -14 -4 59 -31 -5 -14 -15 -13 -12 1 34 45 -49 -10 10 8 -13 22 -4 17 19 -31 5 33 -30 16 17 -4 16 -13 -15 -11 -42 -18 -15 -36 4 -57 -17 -13 -20 36 -7 29 17 -16 -26 -25 34 -6 -7 -11 6 -6 29 -6 30 4 20 -11 -16 -6 -16 4 9 -4 -7 38 -25 40 -14 2 2 -8 -8 25 -19 -56 16 28 -29 -29 -42 -16 35 42 -16 23 -16 -10 16 18 -18 -52 -38 -16 -55 -21 2 -11 10 -11 12 7 -10 -6 -10 17 11 -26 31 -9 39 -14 -54 52 -7 -41 24 17 -3 -12 13 22 -15 -3 6 -5 -26 -39 -20 16 0 -19 0 -3 -19 -16 -9 -9 2 2 21 16 18 3 -4 -15 8 -17 -6 -2 15 2 -7 10 -5 -31 -16 2 19 -22 -45 12 20 -10 -20 -33 -6 38 17 8 17 -28 15 -47 1 35 4 9 -13 -23 -19 21 12 1 -22 2 -27 -7 25 22 -22 -4 -11 3 -10 33 8 3 6 14 12 24 10 18 -25 -2 -23 15 -26 -33 -1 -8 -29 -25 -32 -20 -10 -22 7 5 -30 -17 19 -10 -1 3 -12 -17 5 14 29 -13 27 7 -19 26 -2 -50 4 7 5 -33 -9 -29 0 1 -4 19 23 -34 19 8 70 60 7 24 -34 -25 20 57 28 11 47 62 -60 -27 67 19 -48 84 49 16 90 7 23 -25 -76 26 -47 -38 41 61 29 -18 6 -20 40 61 8 123 -66 23 34 -37 78 -44 -9 -14 -37 20 -28 -20 14 20 -1 67 15 -49 35 85 -21 33 -11 20 -28 -3 109 30 58 59 -21 7 51 17 53 44 24 62 -49 -67 93 -47 -20 18 -19 34 -4 35 -38 -40 42 -21 1 -76 -5 42 52 -35 15 41 100 -10 -107 -27 20 -1 41 -35 -33 10 105 -15 -55 91 15 10 -17 -30 75 40 -72 19 -40 -10 14 9 13 -19 -64 40 -23 -59 -11 -32 -27 -120 -8 87 -33 -80 7 -2 -14 39 -27 21 -9 38 -64 -19 -28 89 -4 -46 -8 12 -54 -23 44 11 48 52 -32 47 20 45 83 12 28 34 26 7 -28 45 -19 -33 -15 -6 14 4 -15 -38 -76 -33 5 -38 -45 -59 -23 -12 18 16 -2 -25 26 16 22 -16 6 -12 15 2 22 1 -19 6 -91 29 -9 22 -31 -22 6 24 16 34 45 -44 26 51 16 -26 -21 -8 -15 -24 14 54 -9 29 28 -15 7 -19 23 22 27 -37 -28 -12 -16 43 1 22 9 -11 44 -15 -28 -24 -2 -18 15 11 -43 -21 -12 -17 -13 -29 -3 12 23 -4 7 23 -9 19 42 -51 -17 -7 -97 34 -29 23 -32 12 22 20 -54 -11 -93 13 -30 37 -20 -11 -19 -48 -6 -1 -12 10 33 39 -21 -83 -26 39 -34 11 -69 30 24 10 -14 -56 11 -46 -17 -2 -12 -6 16 27 -23 -27 -1 -65 30 -8 -31 16 -31 3 -52 47 -27 -2 -22 -39 38 -2 -19 -29 8 -64 -26 -11 -31 6 -10 69 10 -6 11 -23 -6 27 25 -7 21 7 18 -9 9 -29 41 -3 -12 -49 6 -23 -15 23 -12 -47 -64 -2 -17 36 -57 11 -28 -95 8 0 1 11 -20 3 4 -23 41 12 -16 -25 -71 0 13 -22 11 -46 -10 37 -14 -76 26 -4 -42 -7 42 -16 13 -32 16 31 29 -43 0 -7 39 -37 -17 -26 2 21 -1 37 46 -14 -7 89 30 -13 -20 24 34 19 4 55 -15 39 -16 -34 34 -14 16 21 11 24 -35 12 -33 -58 -55 -41 25 35 15 24 -34 10 -14 81 -42 8 76 4 -34 -16 -15 -3 -5 11 -25 21 4 -40 -27 18 12 65 14 -10 -13 -1 -8 -20 46 7 34 17 -17 -9 -35 -10 18 12 11 -22 33 49 -25 43 11 -17 16 23 5 28 27 -21 -34 29 -19 -27 25 12 41 8 6 12 -30 48 -4 13 19 2 -37 9 -17 -35 13 5 -10 -17 15 -1 13 29 -18 -37 8 -5 -56 25 -17 16 -15 -29 -34 6 10 -5 -60 36 18 2 23 14 -24 -40 -15 -5 4 24 32 16 -16 -14 37 -6 -2 -52 -73 -22 -53 -11 21 -6 35 16 -33 -6 46 29 -46 -54 15 22 1 0 -47 -6 54 2 40 -30 11 11 17 4 7 -9 -41 -41 -66 11 9 22 -17 29 16 68 -14 -15 -65 24 6 7 11 -42 -20 -9 8 -51 -4 -48 15 16 -18 -19 4 1 16 -34 23 15 -14 26 13 -4 4 -86 42 0 -41 37 23 3 17 0 -34 -30 39 7 -27 -40 -26 7 -29 -28 -10 26 -106 -34 -2 5 -6 44 -7 -24 19 -15 -49 -17 -21 18 18 17 4 -1 14 -9 -36 10 -28 3 -64 71 -19 -43 -14 -33 12 -26 -12 15 27 6 -18 25 9 2 12 15 -52 -74 1 -39 -35 10 54 -13 8 -15 -14 14 -7 -5 -9 -15 -5 14 19 -13 -45 -6 -15 -8 5 7 3 51 -77 8 3 -22 21 42 -23 28 0 29 -53 50 12 33 15 35 66 -47 -2 7 8 0 8 -7 15 16 70 -2 -6 11 12 9 26 13 56 24 13 19 -4 16 22 -7 38 9 -12 9 -15 -24 4 -36 -32 24 -19 23 -36 33 -5 15 42 -10 -15 6 -21 -32 4 20 -36 35 -15 12 30 -20 -11 -15 0 -18 -1 7 40 -22 1 8 21 -19 -12 -13 0 6 -15 -30 -64 -3 -15 -19 13 -18 28 6 39 -8 6 -1 24 5 24 -7 -22 -7 1 -16 -13 -33 13 55 13 -52 -39 18 49 -19 24 -24 -48 -23 -10 2 -50 65 25 -15 -15 -14 21 32 30 -43 -31 -14 2 20 1 -15 74 -40 -6 -17 -38 10 30 -31 4 10 0 1 15 20 -25 27 -2 26 -21 -12 17 16 51 -47 29 36 -7 -3 -8 4 0 -12 -7 -11 -27 -34 11 27 4 29 -14 -32 35 -8 -34 -17 42 29 22 -26 8 19 -46 -55 -25 1 10 -39 -36 -8 48 12 -47 6 -48 30 -15 4 0 -19 -21 -9 -42 -8 9 -7 3 29 4 27 -15 8 -27 17 8 -17 -13 12 -18 10 4 23 8 -10 -26 -7 32 7 -34 -49 32 -7 -42 11 17 15 -42 -24 -25 -25 -33 37 34 21 -15 -50 -16 12 -7 -38 -4 6 14 -7 42 -23 26 -15 28 -24 19 -5 0 8 -7 19 -6 11 -20 43 -20 -19 20 3 30 25 16 4 22 -1 -15 -15 -11 -2 4 -2 81 40 30 -34 7 31 -29 -4 33 13 51 -25 -31 -20 54 -25 0 -12 -3 25 33 15 -34 14 -17 -23 -26 17 -1 15 1 -8 11 7 -18 -1 7 15 -13 7 3 -10 19 -23 -4 6 2 -43 2 23 -13 -45 -30 -10 -2 0 -23 24 10 17 0 15 13 7 -8 -5 -2 29 -3 12 1 -11 2 15 -13 2 -17 -4 -15 -4 74 9 16 18 17 5 34 -26 -40 0 -23 6 -15 -28 -4 10 -5 -20 2 -14 18 -22 -1 24 -31 -17 -11 -2 21 11 13 -2 13 -13 12 17 -9 -16 16 -6 30 -7 27 20 46 -52 29 -14 10 21 5 14 3 -12 42 12 -14 -23 0 31 -12 -19 -26 -4 21 -6 -9 -46 -19 -4 25 -7 16 -28 4 -10 5 26 36 -36 13 -14 -6 -7 10 -10 -12 43 -39 4 -7 -43 43 -37 -10 -10 -15 -32 -35 17 -8 -14 19 -52 16 31 25 -4 0 35 10 36 -12 -5 14 -4 -6 -36 10 -6 72 1 9 -13 8 38 -5 2 2 12 -28 12 -29 -7 19 16 -40 -17 -7 -25 -2 12 -5 15 -3 43 -31 12 -20 -23 5 -13 3 -35 -27 -10 3 -37 1 15 23 -5 33 32 36 -31 11 29 -29 10 -21 5 -31 29 -6 -5 35 8 25 29 21 -2 18 -10 -9 -12 -7 -3 9 40 -28 4 -5 3 13 -6 -29 30 -4 -7 -7 -17 6 14 8 51 -64 -9 -12 -10 -21 25 3 6 17 7 30 27 -36 -23 43 14 5 26 5 -24 -12 32 17 -22 -20 24 15 -28 -16 4 -2 4 12 -15 14 -7 -13 5 13 13 -29 -27 1 -13 -10 -3 -27 -3 -4 25 -3 24 -10 11 -7 12 -11 9 6 1 -8 26 5 42 34 -5 -10 -25 2 -8 -11 -19 -9 -10 -48 41 0 -13 3 8 -23 -19 10 -21 33 -4 -8 33 7 5 -4 -3 18 26 2 -16 42 50 -16 19 -11 -13 11 -25 30 34 -6 -20 -25 0 -15 20 2 -4 -15 109 2 -28 -38 -90 30 7 -48 -8 2 -85 11 -68 14 50 37 -36 55 -23 -2 89 -9 -15 -25 34 28 -3 33 1 -5 24 -5 18 37 52 29 15 -55 -7 75 14 14 26 23 9 -17 -14 7 36 -66 10 50 -7 50 23 66 3 -25 70 19 -23 2 69 -32 8 23 -25 41 29 0 1 3 27 -3 -38 -30 -79 67 39 29 57 -18 11 -17 71 -34 0 -8 -21 -30 0 5 61 -3 29 -6 24 51 -11 -19 -25 42 9 -11 40 -5 -8 -69 71 37 8 28 -34 64 -50 -54 -2 -37 30 -31 29 27 10 -52 -6 -35 -10 -13 7 -5 23 -17 -1 44 4 11 -38 50 14 30 -48 -22 10 -65 -14 -12 -6 -31 -7 38 54 40 5 -26 31 24 12 30 35 -52 -10 33 -23 -34 51 76 -3 -2 -2 14 9 69 -28 -3 -7 -8 -15 -14 9 0 -10 -15 7 -38 -18 19 12 12 -24 18 32 35 10 27 46 -30 5 16 -6 16 20 -9 -26 17 5 19 -9 -14 14 -2 2 29 -36 -28 -23 -9 -17 19 24 10 -15 10 30 25 -6 -17 0 -3 -13 -3 -2 -3 -26 -36 -10 -33 -9 29 -12 11 -31 25 1 17 25 24 13 -5 -14 -47 -4 15 -17 -21 5 -34 0 -5 9 -10 7 10 7 -22 -10 37 11 -22 12 5 25 -21 18 6 35 18 -14 23 -2 -28 12 -9 -7 25 1 -6 -4 -43 -19 28 -32 -26 0 48 27 63 8 -7 35 30 -69 32 -20 -12 29 -14 8 -20 3 26 -27 27 13 29 10 50 6 -6 4 -23 49 27 28 45 40 -30 22 59 42 40 -73 75 -25 -18 -21 -31 51 37 -51 20 2 -26 -55 14 7 10 37 30 -13 24 -11 -12 63 36 57 -15 9 -41 -2 20 -42 -18 -9 14 31 19 49 14 7 -12 71 6 28 -13 -23 -61 35 6 6 -23 14 -12 19 -17 -5 2 5 -14 7 1 -11 14 41 -28 25 -13 6 5 45 -14 28 -19 -55 39 -25 21 -18 1 -8 -19 31 4 -12 38 1 42 1 16 9 -24 -60 63 33 -14 -18 22 32 -20 -25 12 -17 10 6 15 4 -38 15 50 49 14 -63 -5 68 -20 -36 17 70 27 0 20 11 -25 15 -2 47 6 -7 -41 -10 55 27 23 -5 -12 10 -7 -22 7 -9 17 4 0 6 -13 68 44 -31 20 20 -19 26 -10 41 -1 -3 -15 15 14 3 5 9 46 5 13 -5 0 49 -39 -25 -11 -46 -14 12 5 -5 -24 -4 -8 -18 -3 -13 12 -6 -30 -10 -18 -31 5 -18 -9 -17 19 36 -22 -22 -33 9 -7 -10 15 33 17 3 1 24 -5 0 -11 8 -8 -5 -2 -21 -21 -1 30 19 -23 13 -14 11 -30 38 9 11 -28 -7 7 -26 0 -5 41 23 19 -16 11 -15 -7 -8 24 -19 -16 18 -19 -2 31 -28 -15 8 -19 10 25 20 -12 -4 18 -51 18 9 33 3 29 11 -45 -19 42 -4 27 25 -47 6 -30 -15 3 -13 22 23 -23 -19 -24 10 -9 -17 -9 -25 -36 28 44 3 -14 29 7 -9 11 -18 -55 36 -16 -1 -33 -26 19 -12 -2 -45 -5 -14 -25 -36 -1 11 -4 27 -2 -7 -3 23 -39 -26 30 -16 12 -92 -46 13 79 23 0 -13 45 5 -12 -14 -22 25 1 24 17 14 39 -16 -11 -28 4 -17 -13 -15 -10 -26 5 -20 -27 34 -26 9 20 29 -26 9 -23 -9 8 -13 13 32 17 -6 -13 -19 -37 -28 3 25 27 0 -7 3 13 -31 8 -30 16 -2 21 -32 17 17 -28 5 -38 -48 13 -1 -36 -34 -27 29 -25 -6 12 -3 13 15 -29 -37 -33 6 6 24 -5 -8 21 11 -22 -6 -7 -33 -25 30 19 -18 -1 9 -14 -34 -8 18 -9 1 16 -20 8 15 -28 14 -14 -15 5 5 -11 -25 15 15 -21 -20 -18 19 10 -8 -1 2 0 -19 17 18 31 30 16 20 23 10 -27 -3 1 36 28 21 20 -8 13 28 -12 5 24 -5 13 -20 6 6 -8 3 -9 5 8 -6 14 2 -14 -6 1 0 26 21 27 7 -9 -1 -25 -25 -10 -22 16 22 13 19 -6 -23 -4 -6 5 -13 26 -14 -14 7 18 10 29 2 -5 -9 12 -22 -8 -6 -30 3 -6 -22 28 2 2 -6 11 19 22 -3 -50 7 11 14 4 -22 -34 11 -6 -31 -2 3 -1 -24 51 0 9 37 61 -13 -55 47 29 83 8 24 3 -13 30 -36 -68 -31 91 8 3 -47 36 10 37 2 27 5 33 1 -45 2 43 52 6 9 -54 -2 -17 64 4 13 -45 -30 -36 -33 -49 -23 12 22 6 -13 -9 9 -33 -16 -15 16 -3 22 27 -13 -8 14 -13 -19 34 74 -22 29 43 29 10 -13 -9 -35 41 9 54 38 -6 -21 35 -26 33 -7 26 4 42 5 25 27 20 2 1 -14 9 -6 26 -37 0 44 -31 -26 -3 -35 -39 -4 17 15 17 -33 6 -47 18 10 2 12 -11 -22 26 34 32 -2 -66 19 -1 -27 -21 31 -38 3 -2 33 -26 16 2 -44 -29 -6 -14 15 -17 -20 15 -8 24 46 -4 21 -13 26 45 -17 42 -10 19 -9 1 28 -42 -27 -16 -13 -43 6 6 -14 40 11 -25 64 32 0 11 21 5 2 -27 11 3 -12 -17 27 22 -21 -7 -20 -35 -14 1 50 17 -13 15 -7 32 -1 3 -20 8 17 0 -35 -21 37 -25 24 -2 12 10 25 -12 -2 12 -3 6 -25 7 -6 -32 -2 18 -14 -14 -23 9 12 3 -21 40 -7 8 6 -20 -6 17 3 40 -1 -18 9 28 27 -16 11 -31 37 -13 11 25 -1 1 34 -13 7 -23 -25 8 12 -4 -13 -16 32 -3 10 20 3 -30 -35 -2 10 -18 -53 -1 -70 42 -3 -6 -7 -8 17 12 -77 -2 -2 59 30 -26 14 -6 -25 -40 3 -38 21 11 21 29 46 -3 2 38 15 -12 -2 49 -18 -61 -95 21 52 -11 -53 52 -125 32 -36 -66 -48 -29 -15 -9 -48 -85 18 51 8 6 10 -1 -56 -17 -69 101 -7 -9 47 -69 11 30 -29 -8 -42 -15 10 -36 -80 11 15 -5 -1 14 14 -1 -50 -100 -8 -17 34 50 17 -47 -40 -61 -18 -11 -29 23 -35 42 -33 18 -8 17 -47 6 -15 -34 32 -4 -56 0 -42 -2 -18 -21 6 -18 -7 -15 15 -30 0 -89 -9 25 -32 -19 -19 -18 -23 12 44 8 -90 34 -19 3 -30 23 -4 2 25 -3 4 -6 34 -40 13 3 37 33 -23 7 25 -38 6 -52 -28 -25 2 20 27 27 -5 -20 18 -5 -2 -1 -45 -14 -43 -2 -10 -28 -48 -27 8 4 42 -2 0 -27 -7 12 11 7 3 15 -28 -11 6 39 -24 18 -15 -8 -36 -1 -15 -7 10 -15 19 -9 28 16 -6 -13 12 -15 45 -41 -25 22 -47 -32 12 27 14 -3 0 0 16 -22 11 4 55 49 3 -18 -9 4 -8 -12 -31 15 54 0 -1 -9 -3 -26 14 -34 -13 40 41 -12 14 -11 4 8 47 -73 36 5 -20 -8 34 37 18 29 9 -56 13 -5 -47 7 -29 16 -19 -42 8 -19 -56 -9 22 -6 6 -26 -6 8 30 -7 -61 2 15 12 6 22 9 22 17 -50 23 30 13 -16 43 26 32 -39 0 -36 -32 11 3 28 37 -48 -30 -5 -32 -12 16 32 41 -39 -20 2 -26 -18 -29 7 44 -28 28 9 46 -42 32 -76 -24 8 30 17 -17 25 -12 9 -9 -5 11 9 7 -38 84 -41 96 19 -45 -24 -17 -17 -38 21 37 -8 25 -33 27 8 33 2 -19 21 57 -8 4 18 -19 32 -7 42 43 13 -37 21 -31 -25 23 -6 -5 -6 -53 15 23 -44 -20 7 36 25 -17 -36 -4 4 21 -8 7 20 19 -54 -25 -35 31 -62 52 -29 21 18 -2 21 42 10 -31 68 22 -7 52 -27 1 41 -10 -13 5 -1 -24 -24 10 14 -47 -29 -5 22 4 -24 24 22 -25 -11 19 21 -5 22 20 29 -33 -35 33 -32 -9 13 -5 46 67 28 -16 10 25 -7 30 -2 40 -11 0 -5 -1 29 32 1 -12 -15 52 19 17 -32 26 -17 -26 -13 1 -8 6 -24 8 22 -34 -1 10 12 20 -2 3 -18 -17 -28 8 15 -12 -2 9 -5 -9 29 41 11 -7 -2 21 15 -1 30 -19 17 6 6 20 10 4 2 -24 19 14 -4 13 30 16 4 4 44 2 12 18 -33 -12 8 -3 -9 6 -9 25 -28 21 22 -18 -16 -17 7 -19 21 -6 17 -7 4 -21 -6 -11 -6 32 -12 -7 1 -4 -10 0 8 32 -16 14 31 12 11 1 20 25 0 54 26 33 57 29 65 -16 -36 34 -44 -57 -37 27 6 -5 30 31 50 -30 -19 -72 -61 4 -16 -40 15 -14 37 9 4 7 10 16 -14 38 45 14 40 63 -28 19 3 -29 11 -31 -21 -11 -29 -30 -10 20 57 -23 5 -5 2 65 -12 29 12 23 -3 34 84 -37 -41 21 -12 57 13 -23 -11 38 0 -6 -5 -12 -13 -16 -11 -7 0 -36 -65 16 24 4 1 7 -15 46 -55 13 17 27 11 -10 -32 7 18 -21 -31 12 11 10 -34 17 23 32 -39 -40 43 -1 -11 30 30 3 9 1 6 -16 -14 2 17 14 -36 -23 -9 -13 -15 -16 -43 44 -42 -12 21 38 -5 -13 18 -8 -62 26 7 6 -21 -59 20 -31 -45 7 33 -48 -26 -22 -19 29 -6 -34 96 18 17 -23 53 30 8 -11 -24 -26 4 7 60 -11 43 30 1 -26 -25 -29 -44 24 21 -23 -10 32 6 7 -31 21 15 8 19 10 9 12 -10 10 -15 2 -5 -12 18 28 19 -29 -32 -23 6 7 -3 44 -2 -31 -8 7 -17 -3 -8 -45 8 10 -12 -13 -5 -9 35 15 -2 -8 -36 -29 -9 -62 -18 -24 -18 -32 4 2 -18 -14 36 2 17 2 9 20 12 -28 -16 -1 20 17 34 20 -1 -41 -13 23 21 3 10 -14 -25 8 14 -21 -20 -9 -20 -20 14 3 -18 -21 0 -53 -3 -12 56 15 -5 -16 -5 -27 -3 8 -11 -34 7 -20 0 -2 -11 39 32 -22 -10 14 66 9 30 -21 6 1 66 -23 -24 11 -59 -44 20 -15 -15 -29 21 -14 13 -7 -11 -10 -5 13 -46 -45 -5 9 39 3 -6 26 18 6 -27 -28 -33 38 -24 66 -23 -24 -8 -37 12 13 -26 -19 17 21 39 -14 -1 -12 42 -25 17 7 -35 9 -15 10 4 10 -16 38 38 80 -61 -28 -27 28 48 -13 13 37 -22 4 -21 53 -13 -8 12 0 -14 -20 -6 32 4 -16 5 28 -12 7 18 -16 -16 -43 5 40 -19 9 -30 -10 9 -4 -1 0 -42 34 22 17 52 31 34 -1 -19 -24 -49 -18 -40 -75 3 -25 13 -12 5 -6 24 12 25 7 -7 11 -5 -40 5 -26 28 -18 -17 31 13 28 -9 60 -11 19 7 -11 -29 12 4 -17 3 21 21 -43 31 36 -5 7 41 -20 -7 9 -26 6 -23 -11 15 4 -5 34 -6 -19 -35 -5 -45 34 -15 -27 -28 -9 -13 12 -17 32 30 18 19 -12 17 16 4 25 1 -9 -5 -40 7 13 -15 -14 -21 -5 -16 19 49 -25 27 -10 31 2 23 -8 13 -19 19 9 -23 5 31 5 -17 7 -4 -12 -14 9 -23 -11 -16 -22 -9 15 10 20 5 8 10 -11 12 5 -1 -16 -7 -13 0 -10 5 -14 19 14 -11 -7 7 22 -4 -10 20 0 7 -27 -4 14 -34 -25 -3 17 29 4 -10 -6 -19 0 -5 -2 -8 -42 19 -13 -32 -38 13 -91 2 26 14 -4 -29 -44 -2 -25 15 19 18 -15 -30 -18 13 46 11 7 -14 -17 14 12 -79 -15 9 14 67 -37 -5 -28 6 -5 31 -44 6 -21 -83 0 -37 -7 -7 9 -12 -42 -1 23 25 4 -7 5 -24 -21 55 -32 39 29 -7 -52 -11 -27 -25 -32 -21 -43 16 -30 -35 54 -34 -4 -8 -24 1 59 -5 -11 -55 25 9 -13 -18 -39 -5 -40 1 -34 -3 -37 15 -9 29 5 22 -27 6 -30 41 10 44 -15 -47 18 -32 -15 28 33 14 -33 37 17 -30 4 -19 33 27 -4 17 10 7 -43 -24 26 -17 18 -27 28 -6 -38 10 -14 -21 20 6 42 -10 4 45 2 -15 -5 -42 -41 51 -2 7 -24 -36 -18 2 11 0 -12 24 -9 11 12 13 13 -8 -33 33 23 28 -21 6 -13 -6 16 57 61 -32 -31 10 -10 46 15 -2 -8 -11 41 5 -8 25 -8 4 13 -1 26 8 -8 -34 -28 12 21 1 -23 13 -10 12 5 -2 31 -15 -10 8 -9 21 20 -11 -54 30 4 16 30 24 18 -18 10 12 -37 22 -1 2 46 -4 11 -16 -9 2 -19 -10 -3 -24 18 16 12 14 11 -10 -8 -17 -19 -24 -15 22 6 -2 27 46 -26 -32 -7 5 5 13 -1 13 20 -29 -1 22 17 -34 3 -15 -16 3 3 -19 8 -12 -11 -3 26 1 -30 -1 2 0 10 42 -21 -70 10 53 -12 9 47 39 -16 59 -7 -37 -22 -12 -7 -21 49 50 -6 -2 -47 -8 -7 32 16 -52 -1 -7 28 -22 -64 -14 -27 50 -6 -51 18 -26 -15 -62 3 -28 -64 -9 -2 54 0 -36 -18 14 -52 54 -24 27 -24 -40 12 -3 -19 -112 -22 -11 64 -9 -12 -30 -37 24 -5 -8 -11 -31 -36 -11 -1 26 29 75 1 43 -4 22 -14 9 -12 -6 -12 14 -41 -29 -24 -1 35 -45 30 -37 5 48 -32 -7 16 -10 -13 7 59 72 16 -36 8 32 -44 -10 -43 18 8 -2 -58 -49 -5 3 -3 -33 -13 2 -24 -15 -47 14 2 -11 25 -1 17 -7 13 4 10 -2 -3 14 -2 -29 39 -24 11 16 24 20 -38 15 7 -23 -29 7 -60 -23 1 -29 -37 -67 -55 -32 -21 -32 19 40 36 12 -21 -51 -31 -62 25 0 -2 80 1 0 -9 -19 0 -13 -28 -5 1 -45 -3 44 20 -6 15 -3 -18 7 11 5 1 -8 -14 -8 -1 -28 17 9 11 -35 15 -4 -26 -52 13 13 -27 12 -4 -19 51 1 19 -25 -32 -5 -14 -8 -3 2 38 -20 13 19 3 22 27 33 -18 12 5 17 11 19 -22 -19 36 -21 10 21 -10 30 4 -49 -17 -12 -5 -9 -8 -22 -22 3 -11 5 3 -24 -3 15 -8 -10 -3 -9 12 -35 -49 34 24 -15 41 1 11 -25 -20 25 -4 -29 11 -5 -16 -50 3 -2 -59 -53 12 -17 -27 -30 -20 37 -30 -58 -15 -17 -2 28 20 19 -32 33 -22 78 22 -59 4 13 19 -26 9 -25 6 -7 3 -28 11 18 -19 -5 33 -55 -73 11 0 10 -30 -19 5 26 -30 -10 -61 5 5 19 23 4 -14 9 5 -30 -15 74 -40 16 49 19 -37 -27 -54 63 -33 -9 -44 11 -64 -6 -17 -56 -22 53 -45 28 -32 -20 11 28 -3 -18 36 -30 -28 -7 -8 -27 -53 42 -2 20 12 -3 17 8 -36 30 31 21 14 36 -2 -17 -25 -10 57 28 -42 -25 23 33 -15 -18 19 8 -9 -26 25 -6 4 -7 -5 17 -48 41 -36 -29 60 -7 14 -1 -6 8 10 26 -1 -2 12 -36 -24 -33 -57 31 -10 -24 -52 -29 -15 -18 -3 -32 -34 4 25 7 -26 -32 6 -21 -38 19 -11 0 -10 16 9 -24 -31 -47 19 24 44 18 13 -15 -20 -15 -43 12 -15 -24 -16 1 0 3 0 -8 -29 -2 0 3 -31 -19 0 -29 -5 -17 24 -7 -44 -5 22 7 -21 -16 33 26 0 -17 9 -4 3 -22 -8 -2 -1 36 32 -16 -15 -3 -2 -9 -21 0 32 -8 0 -9 -19 16 21 0 13 -5 -23 -12 45 29 -19 14 -16 36 11 10 8 -52 -2 -14 -27 -9 1 24 4 -11 -11 -9 -7 4 -7 -17 -18 23 17 -7 -39 -8 4 -4 -23 -10 19 -26 -1 20 -4 -2 -29 -12 -11 -9 -5 -8 20 33 5 -4 45 -26 4 -13 36 -12 7 10 21 1 -24 8 31 -3 -17 5 5 8 40 27 -13 24 -27 15 -21 36 21 13 -9 -31 -4 -18 -46 31 -23 -2 3 -49 -33 -51 -23 19 -6 55 -24 -35 -11 6 29 -53 -20 5 25 7 7 36 14 4 14 -20 -50 -19 32 30 -44 -10 -10 -4 -10 -13 -16 22 -50 -21 46 -5 -60 12 11 6 5 -9 32 -7 -82 30 48 14 5 -8 1 -16 11 20 -11 1 7 -29 8 10 -18 -52 25 2 -4 -5 -12 -9 -8 -18 -19 13 -16 -1 22 -11 -21 -12 9 -4 14 -18 21 -27 -12 29 -41 -6 -15 -7 -6 44 7 -23 37 11 -18 -34 -35 41 54 -37 41 -7 -11 13 13 38 16 40 -9 -8 44 0 39 -27 -22 -16 0 2 18 1 5 -24 -47 -41 1 -15 -14 25 22 -9 6 25 30 21 -1 14 -7 -15 -21 -4 -11 -49 -32 23 17 -14 60 -2 -4 30 20 19 30 32 -31 27 13 22 9 -12 -7 13 10 -5 43 -29 -9 -33 -24 -26 24 -22 8 7 24 4 6 14 34 17 0 39 11 4 -28 -5 -40 -14 1 -23 14 -5 32 18 10 -29 -6 -18 -15 -10 8 5 -2 -2 30 -29 7 -16 18 1 -26 22 17 -10 -7 -1 4 -5 -22 33 -6 -27 6 -11 25 27 -7 -12 -12 -6 -2 19 9 1 -31 -23 1 16 9 -16 5 -42 -24 -3 -17 20 -20 14 -29 2 -14 3 19 27 -19 33 -3 -4 37 -2 33 -12 -17 -71 12 -80 -68 -6 -14 -15 -43 -8 1 28 -66 57 1 -9 14 -13 -3 2 -13 39 29 19 35 14 19 -40 13 8 39 3 10 51 -2 31 -47 -87 -22 -43 -49 22 -22 28 22 44 8 -92 46 -4 10 -11 -29 25 19 -28 11 -20 -8 23 47 69 -4 -31 37 11 -38 -16 15 14 15 -13 1 21 7 28 -1 1 -26 10 2 0 -9 4 -9 17 0 -28 43 -5 -37 54 -19 -31 -24 -23 34 7 -9 -5 -11 -16 12 17 0 9 19 67 -1 -32 13 12 -23 44 37 -25 -8 -20 -7 -31 23 -10 -19 1 -3 -5 16 -26 15 46 -4 59 9 -21 -11 44 1 -9 -9 -4 13 0 -6 -10 -44 -30 4 17 -14 37 1 26 4 -26 -41 -23 25 -4 -11 4 -8 -16 50 -6 5 -3 -2 41 -16 -22 -6 3 -14 18 24 -7 17 8 -5 5 1 -4 -25 3 22 18 8 8 -11 11 25 10 -10 18 15 4 18 4 7 2 -5 -6 -33 23 9 -11 -4 -11 -13 2 -19 26 9 -43 -23 0 -20 -3 -34 19 13 18 -9 13 32 20 -12 11 -11 21 -11 14 18 -8 1 -19 24 -10 -49 0 20 -10 11 5 30 36 7 10 24 25 -29 6 18 -16 -8 -36 29 -20 -20 25 3 14 16 -4 -65 -57 -6 -45 -59 44 62 -43 -8 -10 -53 27 101 33 19 -55 -63 24 -16 -14 22 15 -32 0 -54 10 13 -35 -18 34 -48 -9 -48 -8 3 -15 -3 5 -49 -34 -15 -32 -38 3 19 -25 -42 -93 3 -21 -19 1 68 19 59 100 40 3 79 6 64 8 -18 80 -24 36 10 26 -60 24 -19 -29 -26 -16 -42 -17 31 24 10 5 9 -37 -21 68 36 37 -14 -46 40 -37 -34 -13 -51 -33 17 20 28 51 15 -44 -51 -33 -9 -11 -26 13 -36 32 -6 -31 9 -54 17 54 -8 -37 25 -15 -17 22 -26 9 37 -46 -11 -44 56 19 31 -31 -12 -21 36 3 -56 5 -35 28 -18 36 -40 21 17 24 -14 -32 -20 5 10 -18 21 -47 -12 1 3 17 -28 29 -20 -40 -28 14 26 11 -48 -5 -67 -27 10 -2 25 -33 -1 19 2 -22 -3 -19 -5 46 11 3 -23 38 8 32 22 -13 -64 7 31 13 -19 -5 18 -2 33 -10 50 -30 22 29 31 11 -11 43 -2 22 33 -5 22 -4 -23 22 39 23 3 54 -28 -6 30 17 -44 11 -47 -30 -45 24 9 -39 -22 -2 0 -22 -32 -6 -20 -12 -31 -44 -4 14 4 10 -15 -22 0 -9 9 9 -27 -29 13 -27 26 1 27 -13 -13 12 -11 17 7 -23 -5 -6 22 11 6 12 40 -17 17 25 -23 3 8 -6 -20 -8 -1 -12 -18 14 -6 19 -38 57 -71 4 4 -42 -20 -50 -6 4 11 -6 34 30 30 13 -57 1 -30 -61 -25 -55 1 101 62 34 -21 11 16 -1 0 4 -2 -12 -33 -19 -58 -26 3 -56 -2 -26 5 6 -38 -47 -1 10 -16 -1 -33 -5 -26 -26 15 35 49 -40 8 -36 -72 -8 9 30 39 17 12 12 -47 -34 -17 -15 -16 -4 4 -20 3 22 64 2 -13 -49 22 -9 -6 -6 -25 33 -44 19 -10 -32 -56 1 -20 16 18 4 28 6 -5 -32 -36 -35 -4 -2 1 -24 -6 -6 14 4 -39 26 -4 -39 12 -10 9 1 -28 29 -25 -27 5 -35 17 -8 7 5 -8 14 12 -20 32 -14 -39 1 3 -13 -20 -21 4 -28 21 42 31 36 23 15 -17 -31 -56 -2 6 -58 22 -8 5 -27 -23 8 12 0 -15 33 -1 -31 -1 -17 8 0 28 -34 21 0 28 14 -5 15 7 -9 -21 54 39 -49 18 -32 21 -4 26 -2 -23 24 15 -22 -10 -3 6 10 -12 7 17 24 8 -16 -26 -13 -16 -1 28 -11 19 15 -9 22 -17 -16 9 15 -19 8 4 6 3 -2 -21 -8 -23 -13 5 3 33 -6 13 -7 26 18 15 -8 6 9 1 7 -9 -31 -25 -3 -20 -13 -26 -1 8 -13 4 -25 7 -36 -28 1 -5 14 4 -21 17 28 3 6 -29 -14 -2 23 49 12 6 -18 -28 5 20 13 -31 40 20 -37 26 -20 -14 -20 -15 17 18 47 17 33 -9 -17 6 47 11 -6 4 36 56 62 61 -101 94 -51 11 15 41 104 21 27 31 46 -4 57 4 -5 23 11 45 -10 37 -2 47 -86 27 61 22 -24 -115 54 46 19 54 -2 5 -17 -45 26 23 48 39 30 -47 -36 61 39 15 67 20 91 100 -24 64 -79 -52 -77 -28 91 -16 13 6 -8 10 -41 17 -4 -36 -49 37 -26 6 -25 -4 29 34 -27 22 29 -1 3 75 -19 10 1 -14 0 47 -29 12 32 -3 -21 -8 -17 -13 27 -22 -39 54 25 -15 75 -2 -13 80 -18 -31 97 68 -1 110 20 82 43 -4 -41 24 24 -33 -70 17 -35 -79 19 -7 66 -48 83 38 11 38 -83 8 -7 36 22 24 -20 -17 18 22 21 -7 66 11 -51 -52 -25 27 -72 1 -7 19 -6 19 0 -10 69 22 7 43 -23 52 46 15 -50 -14 -13 11 -3 -29 -6 -21 -28 -40 36 73 -21 -5 4 58 -52 -7 -10 18 13 -59 26 25 13 8 40 14 11 -75 -34 16 2 -44 -37 -14 -5 40 25 7 15 13 26 32 25 17 -27 7 -11 -9 4 -23 38 -6 -13 -22 -13 -36 4 1 -32 6 -27 -1 30 16 7 4 -22 -15 -12 3 -8 34 18 -3 90 -5 -18 -4 -9 11 -15 -4 3 37 -12 -39 -23 -3 6 6 30 -3 10 5 21 -57 45 -10 -20 -17 -2 1 3 31 38 9 -5 18 30 17 -31 -54 32 55 -14 -16 66 32 4 4 34 -6 -115 -53 38 -25 -86 -80 45 -62 92 7 109 -34 -31 18 -65 52 39 -46 -25 -72 -28 62 35 27 44 -1 -54 30 -39 -124 -21 -13 -62 21 -16 -25 49 42 -3 -47 -67 -44 14 61 -43 -26 56 2 95 22 64 109 -52 -3 4 26 -16 6 125 14 -18 6 -60 -13 14 16 24 -26 0 12 -4 -74 -61 -31 -4 -16 66 25 -29 53 -41 85 40 -42 15 -89 14 7 1 -10 19 -24 29 -57 56 -35 -71 40 -11 31 69 -2 -10 11 -106 -31 47 -103 25 -9 -23 -3 61 119 -18 -8 36 123 -65 47 -4 16 -52 -54 -10 -20 -43 -73 23 -30 18 21 8 -98 29 -33 13 -48 18 -47 -60 -91 14 -16 22 26 108 -12 6 -6 54 -12 -40 0 -12 48 31 -33 -36 88 35 66 -37 -67 51 -39 20 -67 -57 -16 51 -16 -4 68 -33 -8 0 12 -12 39 4 17 -51 71 -59 24 -11 -1 29 47 -1 31 -27 -54 -4 -21 35 -11 43 45 25 -19 -15 6 17 35 -21 -19 36 9 -9 -5 -25 -2 48 19 14 9 7 81 -26 -48 -51 17 38 22 20 -39 35 53 -15 -6 16 -15 26 32 -17 -40 11 -18 -59 5 -51 16 25 -3 7 -42 -68 -11 -35 12 3 8 -15 -30 9 -9 11 2 -73 -27 -36 31 -3 125 29 -30 9 -38 -11 36 0 7 26 -3 -31 -56 -23 -25 -11 -9 40 -72 -16 57 94 -26 -28 -21 32 -49 -9 42 37 21 -51 5 -12 13 16 59 -78 30 -8 15 -29 34 -2 30 12 -45 0 17 -18 39 23 -45 -6 32 -5 -13 47 31 11 37 -38 79 72 51 24 -36 -5 -33 43 -38 -49 -67 -25 24 -18 -14 83 22 -75 0 47 36 -2 5 -21 1 19 -9 65 -46 40 30 -37 27 113 14 15 50 -23 0 -1 -1 1 13 -28 -7 -34 20 83 -51 -30 20 46 -61 -7 -22 23 40 -4 -43 -64 -31 8 47 -25 -116 74 31 -36 -53 -56 63 11 -97 -43 51 22 -32 19 24 -32 47 2 26 -61 19 4 55 -24 17 -3 78 -52 28 29 -42 -126 -22 -21 42 30 -31 -14 -20 -41 -120 -59 37 -20 11 -29 21 11 30 -16 -22 -13 -39 -15 -10 -18 -49 -33 -38 13 -19 75 7 4 9 -22 -38 2 5 -21 24 7 -56 18 -19 15 -50 53 -10 -31 -45 -35 14 -37 -60 -3 -8 -64 61 7 -58 8 2 -4 55 0 -19 18 -11 12 18 -42 -11 -51 12 -51 41 -23 11 16 4 -17 19 43 41 17 -8 -24 7 18 10 -4 -6 28 -16 -10 25 11 -24 41 13 5 40 44 -15 -40 -16 -39 5 9 34 54 13 -28 -9 -26 -26 -49 14 36 11 -16 5 -4 -30 -6 -19 -24 11 8 -6 18 23 -22 25 -33 -28 -42 -46 -71 -7 5 -69 -28 -50 -37 33 0 67 69 -29 52 29 -17 -4 -1 -45 8 -9 4 31 25 106 35 -75 -15 -4 -66 1 -6 86 -33 36 -112 -10 -53 -39 -51 25 38 15 -26 48 26 -6 86 -2 -24 4 -12 7 44 -56 -75 -65 36 -3 -70 -61 -6 -42 15 84 44 8 -31 33 33 -17 20 -13 60 -51 25 1 42 -4 76 9 58 -3 26 -27 17 6 8 4 18 -81 -6 -29 50 55 27 -41 29 17 46 -46 -7 -9 -5 -3 80 -20 -9 -22 -15 49 -42 -28 68 -31 41 9 41 -2 3 21 13 36 -43 39 21 15 13 -17 22 -55 30 -34 -47 -65 -81 98 27 -48 -15 -41 23 -9 5 -12 -14 31 17 -18 6 -4 -40 -15 37 11 -11 27 7 30 -53 -26 29 24 -9 -60 16 -3 -32 3 12 79 11 -59 8 59 26 57 8 6 -29 -18 -37 -28 -4 -5 -31 -11 -1 10 5 37 53 15 30 -35 -31 8 -31 7 25 -37 -5 -5 -18 8 0 -15 3 -12 14 47 5 11 22 -39 -21 -28 -4 39 -17 -8 -4 -1 19 28 20 25 1 -9 11 -45 -12 37 13 -34 8 8 -1 11 13 11 -4 45 30 26 13 -10 -41 17 -40 -8 -21 -64 34 11 -8 -34 -29 -17 27 -9 -25 32 -38 37 21 6 -63 26 -15 -21 -16 33 37 37 -9 -10 -21 31 27 -25 -6 62 -23 16 -14 7 -8 -8 -25 7 36 91 -31 -28 -13 12 9 -47 27 24 -11 37 -5 51 -42 51 -7 12 -36 0 3 -45 80 37 90 -18 86 126 -9 -16 -7 -26 -19 27 1 71 80 31 88 62 -35 -17 109 126 -70 75 -6 -28 -40 -23 108 10 47 67 44 51 41 2 44 -28 31 -121 10 84 -2 68 43 -72 97 -8 42 119 6 39 58 63 13 3 -77 -27 -4 14 -52 47 -1 54 4 -39 67 105 -24 -51 -59 51 11 36 -28 58 16 -4 89 -6 43 -73 29 -37 -4 -112 4 32 35 15 -54 4 50 34 14 -25 -57 55 29 -61 85 16 -73 55 -23 28 -85 -4 -121 -55 -89 70 -2 16 -2 57 44 -36 -4 28 -15 -30 -28 37 92 66 -32 106 34 -6 -53 49 -47 -88 40 -20 -60 54 -93 53 37 25 13 -4 -14 56 4 -18 -33 -14 -54 14 25 -44 -30 -47 -2 16 -36 11 -42 -12 -50 -5 -71 -73 -84 59 -52 29 15 -19 1 2 -49 -45 -14 -35 -37 -3 -13 18 -59 28 33 -45 2 -36 -1 -11 29 -3 43 -20 11 50 -15 9 -35 17 -14 21 2 -7 -21 23 21 3 87 -9 39 -25 -70 -45 20 33 -6 19 -7 50 -84 37 40 30 21 -5 11 15 -11 8 18 10 -87 -28 31 41 51 -37 57 3 -39 15 -10 -23 -9 11 16 -58 -14 -30 -46 -4 50 -6 -38 -28 49 0 41 19 -23 12 11 -28 10 -65 20 -22 -6 50 53 -7 -18 10 -53 15 -8 18 16 103 21 24 -33 -18 -31 45 85 -28 88 -60 0 42 8 17 53 26 12 -14 -30 -27 2 -8 32 43 34 26 -45 7 24 -15 0 -25 47 -2 43 78 -30 28 10 80 81 -34 16 -15 26 1 37 -40 115 79 71 -36 4 29 69 55 4 11 -1 -29 -90 -1 47 58 17 39 -44 -12 55 -38 52 -20 49 126 -12 24 1 97 33 44 73 -99 70 -1 -23 -2 4 2 24 10 20 51 2 5 -44 -21 -81 8 -8 -15 6 -1 4 19 -13 12 56 -12 -33 85 -25 -49 3 -96 -52 -66 -6 35 54 -22 -8 -65 29 19 -5 -18 13 24 22 39 -50 -69 13 38 90 13 31 20 -6 -44 42 29 33 52 -45 5 7 31 -37 -13 62 -28 19 -7 44 -23 -39 -16 -5 5 -9 50 19 -38 -105 -16 -28 9 -31 -40 -5 14 18 49 56 -26 -24 -22 4 35 7 30 62 63 19 -38 32 -11 48 -10 35 -1 3 45 25 2 -8 -25 -31 -10 8 -2 55 -16 9 14 83 -13 -14 -27 -46 -42 5 26 1 -15 9 29 -14 19 -25 -36 15 -17 9 10 14 -24 -11 -15 -20 45 -19 11 -15 -15 19 -11 11 26 -4 -72 -23 11 -35 45 18 75 -4 -26 12 23 -15 19 3 23 -15 44 28 -1 -4 -7 18 1 -16 -2 -16 22 16 36 38 -11 17 -6 34 109 35 -35 118 79 64 -66 78 19 49 -37 50 64 -47 3 83 15 -12 123 -68 -11 -11 3 -32 13 19 3 77 99 -45 27 -73 18 91 40 100 -6 3 85 -95 -37 -4 59 16 34 -60 -67 8 23 10 124 -56 14 -38 -37 44 -31 31 8 48 36 39 9 28 41 21 113 -2 102 27 27 -24 -24 -25 -47 -3 37 -27 -26 32 3 117 49 -78 103 -19 30 24 -19 41 -54 52 86 19 87 -16 17 -58 28 -43 -2 -16 47 10 -38 28 -26 -41 -5 89 -28 -49 -35 82 -11 71 44 13 123 38 -11 -10 -21 18 65 5 17 38 52 44 -7 6 25 -7 -21 -12 23 117 42 117 15 14 2 -55 -39 102 -7 11 -19 29 -3 5 29 -99 -9 25 -1 -26 75 4 25 -83 -17 -27 9 -38 20 -16 14 -14 11 -42 -88 -33 22 -5 -18 -29 34 33 15 32 13 63 -32 -25 -71 -16 12 -65 -1 -51 32 33 -24 -28 -10 55 63 -14 44 67 -5 -47 23 41 28 27 1 -34 -19 27 1 37 -3 -16 22 3 42 -13 48 -5 -38 -16 -11 -27 28 12 -39 -4 -2 23 -12 15 12 -44 -4 4 -34 24 -37 -10 31 9 -47 14 27 20 32 -4 -21 -35 -3 29 39 -9 17 7 -14 40 6 55 39 14 -17 22 46 64 7 17 11 16 -17 -6 -66 -28 48 44 5 3 28 -26 4 22 44 2 -17 54 122 -19 25 19 -22 32 48 83 -78 53 1 35 60 -7 -57 120 42 6 -3 32 49 54 35 63 -73 73 -84 10 10 4 49 -40 -16 -25 42 23 -80 1 18 -18 59 -9 44 40 73 -34 50 51 -4 -16 -9 29 97 36 18 -1 -8 -13 3 58 58 -16 -30 -27 -5 51 30 70 26 24 -18 28 -34 97 39 -27 9 -16 -43 91 49 27 -40 -74 4 32 100 39 -20 50 25 29 -4 -41 -55 -77 49 43 50 5 -24 -36 7 -16 -9 -6 -46 31 36 -6 35 44 -31 -18 49 31 112 -23 28 7 -8 -15 34 -6 80 9 33 29 -23 -31 7 59 24 -48 60 44 40 -13 54 23 -14 -112 17 19 35 6 -16 62 -113 51 -25 7 34 -36 -10 -46 -15 28 12 75 -34 -10 -2 -41 22 0 17 36 22 7 52 -4 18 -73 24 27 -28 32 34 -44 -10 -20 -75 -4 12 7 -42 -36 52 78 0 22 -54 1 -21 -17 -28 34 20 -29 4 5 -5 1 -4 -4 2 31 6 -7 -38 -2 4 -8 2 -11 0 -37 6 -17 -17 -11 33 0 8 -28 53 -8 38 39 -17 -28 16 20 -16 -24 17 22 7 -5 13 8 2 -8 20 10 8 20 2 12 2 -13 -50 -81 7 2 9 3 -21 -10 -10 35 19 23 -15 -24 9 -6 -24 48 -46 -28 -13 26 19 -7 -10 15 51 -13 20 -13 -6 -20 -17 -15 -7 -64 69 127 -35 17 26 47 55 51 96 6 -79 72 13 -53 2 125 14 66 24 25 -9 -27 81 14 43 95 11 49 -15 16 -22 41 31 42 -16 97 0 87 14 7 -30 19 -24 18 60 -59 84 -10 -10 15 96 8 14 -4 9 39 127 66 1 51 20 23 127 44 54 74 107 -5 1 -14 4 55 42 0 -9 54 15 -77 -11 -16 58 106 9 -60 23 -19 62 -1 -49 81 -2 26 15 114 -16 -20 33 7 39 -31 9 60 22 -16 39 -29 -45 -9 51 18 47 22 -5 58 -49 25 29 -55 -53 36 24 47 11 -8 72 -6 -24 -20 -65 -22 -25 38 91 -29 -9 25 39 57 24 87 -28 -59 7 -14 -22 -43 18 39 37 36 37 20 -17 31 44 26 21 -84 3 -42 -53 37 71 -37 22 9 48 -13 33 -2 -33 37 24 10 23 29 -20 -52 33 30 -14 -60 -46 34 -56 8 23 -16 46 -15 37 11 -24 -49 12 -14 26 -22 -11 15 -28 -6 -40 26 6 -50 -28 45 -23 -41 14 24 -21 11 -11 -2 24 -16 -14 -5 -5 -14 -41 -17 29 -23 14 36 -1 -10 14 6 -42 1 -51 6 -50 -2 -48 -32 -31 6 -17 18 -14 40 30 -8 -14 20 -16 44 -6 -89 73 16 5 26 45 -1 -6 -20 -38 38 -10 -76 -19 -12 -50 -3 1 -12 29 4 -17 -5 -10 -25 28 21 -51 20 -29 48 -58 -23 42 31 -68 31 -30 -14 45 -82 8 -39 -24 45 22 34 11 5 -1 -1 41 22 40 34 83 35 -14 -37 -7 -58 -1 -38 62 -57 8 -30 36 11 2 46 6 -22 -30 -9 -41 -38 -87 37 41 15 -16 34 -94 -13 -21 -8 64 -44 63 57 73 6 27 36 -14 59 -31 67 -27 52 -56 -65 -21 -25 13 16 -20 44 19 27 52 100 -30 -15 35 79 -17 94 74 123 33 -31 70 9 25 -87 -27 -69 -36 34 93 7 -40 47 81 -24 41 80 -87 14 47 22 -35 -69 -56 35 -12 -33 -76 -37 30 -54 71 18 26 43 67 107 51 31 -22 -1 94 15 18 -33 -29 0 19 3 -52 5 49 45 -8 -9 63 0 100 11 22 23 -9 -1 -66 -53 3 7 36 29 7 -16 32 66 27 12 -88 -35 23 -19 -50 0 52 -40 -27 -10 79 97 -116 -47 9 -45 1 -9 71 -126 -4 -46 -48 -58 -62 -65 -13 -53 -17 -58 9 -16 -11 -49 17 17 -94 12 52 -52 0 41 27 -15 -29 -24 47 18 25 -38 38 48 28 12 7 -13 8 19 -28 -41 9 13 -9 44 1 -7 23 -12 11 -3 89 0 5 3 -55 -46 -25 -8 -12 17 -38 4 55 -14 7 -12 -29 -8 17 -17 -54 -126 -5 4 -23 8 29 -41 16 34 36 46 -23 26 24 29 -22 -6 27 29 -33 -23 58 2 44 63 46 -36 25 -46 56 60 24 30 96 93 44 -5 19 69 -23 85 -35 73 38 91 41 26 -35 1 47 15 11 -22 15 -29 15 48 47 -31 6 -30 50 -76 6 2 26 44 -7 14 39 93 -42 91 19 52 -11 75 2 3 99 -16 24 47 0 -27 22 15 -38 15 50 83 60 -26 116 52 67 3 -9 -72 40 82 -53 25 -3 -36 -7 -1 92 29 24 49 -59 44 73 37 31 18 66 -12 127 10 5 39 26 31 38 63 -45 27 -24 9 25 -30 -17 39 -88 -71 19 20 -62 32 48 41 31 23 -68 58 33 -22 12 5 89 5 30 3 -39 7 45 -18 40 -13 -77 10 -24 123 49 28 46 -18 49 46 40 -1 -3 30 14 39 102 4 26 56 -3 40 21 -15 15 35 -66 -25 50 30 42 -38 7 -3 33 -9 -60 7 14 22 21 46 9 28 33 -16 -41 -20 17 18 16 -54 3 -3 22 -25 -31 73 -72 -15 -49 -17 19 11 -93 -59 40 -37 -9 10 -48 -37 -21 -52 15 -30 6 12 19 14 -35 8 17 5 -23 13 -18 14 -31 13 -5 -38 4 -50 -13 -11 -16 -19 55 42 20 2 -15 -31 -14 -19 -36 12 -9 38 35 27 -24 19 22 -2 -22 57 1 9 -18 18 -4 -22 -19 -19 16 -25 13 13 -52 24 -27 -10 5 -19 -19 16 -13 46 25 -5 28 24 34 -43 -46 -61 -6 31 31 12 -40 26 -37 12 26 -4 28 -31 -21 126 -50 3 3 -97 -44 26 74 25 46 55 26 72 22 32 -17 31 -81 -24 -18 47 113 -7 41 55 0 78 61 90 -9 -27 -33 -23 3 -10 49 102 -30 115 90 19 -2 24 0 -28 106 -7 2 -42 121 10 39 -120 24 -12 -61 -77 -6 -40 -58 -13 -124 -46 19 10 47 -37 -2 3 8 -48 45 -18 12 -65 28 23 13 -96 -60 -8 3 -25 69 -16 97 -49 -57 64 81 71 -9 -12 95 -8 20 -36 -21 -34 -38 -23 -77 97 -29 -99 -5 27 -107 16 32 63 -16 -24 11 -11 -9 -66 -2 -33 -45 68 25 5 -14 -31 46 58 34 64 -14 8 -35 -108 -18 73 -70 50 -74 -43 -57 16 56 49 -29 -31 31 -9 62 32 -5 3 81 24 -5 -32 58 60 -43 -81 -30 48 60 -38 75 -62 -17 -70 -1 102 -51 -32 49 -29 34 18 47 -40 -63 -18 93 -14 -45 -36 16 -45 -28 23 -30 42 -25 -65 59 -32 54 18 1 -42 25 31 -6 -24 14 34 26 -38 60 -11 -47 -30 -22 -28 -107 -72 28 20 -4 15 9 35 22 -36 29 -54 45 3 17 -30 16 56 6 36 -25 9 30 4 14 -10 -11 27 39 -24 127 -19 42 -42 -26 1 17 16 35 0 5 15 -21 -55 -6 27 41 2 -10 44 -18 -55 36 -3 7 0 21 31 20 -75 -35 10 11 4 -126 12 -24 14 58 69 -13 5 -41 7 48 25 35 44 -9 17 -23 81 -5 81 -42 33 30 64 21 -48 -51 -18 7 37 -13 -36 86 -28 -8 -108 -18 34 -39 51 30 21 82 59 -90 -56 37 60 -54 26 -20 41 34 -27 34 -86 -30 10 5 26 54 -73 106 -26 27 -39 27 61 -90 79 -13 27 38 89 -14 5 -44 -32 19 -22 -47 -12 -41 -13 -33 -73 118 -8 1 -11 -1 -23 53 27 -19 -46 35 -27 41 -51 -13 34 81 51 -41 27 66 41 -53 -30 -41 -70 -11 25 15 -21 58 31 35 11 20 -8 -3 -45 23 13 -8 17 -25 5 -13 -43 28 -3 17 23 -20 48 -44 -26 -13 -53 31 7 7 -62 16 3 22 72 -14 -29 -28 7 39 -22 28 1 -7 23 -62 21 27 -26 18 27 17 32 21 1 -44 -17 -40 -68 -9 32 2 77 -38 -15 -6 -3 -37 -40 59 9 17 46 9 -2 63 33 -14 -39 54 -17 -30 -48 41 59 -42 -28 41 -35 13 21 -39 28 -8 -20 -34 -31 -21 -7 -7 -8 17 -27 42 -39 -6 6 -34 -33 -39 43 10 -47 -44 -21 -22 -11 -23 -26 -10 -20 -13 -27 75 54 6 -3 9 -10 29 5 38 -20 -48 -17 -2 24 -42 12 -4 -36 4 25 -44 -5 15 -7 -12 2 -8 6 17 -27 23 -25 6 5 -19 39 -52 -44 4 -15 17 8 -18 14 -13 0 -6 -7 -10 -4 -8 -8 26 12 5 -39 54 -10 -10 -29 -32 -22 -9 17 94 -27 29 38 11 110 -86 7 41 -23 13 60 45 39 45 37 10 59 62 -41 -104 20 31 -37 -5 28 18 37 -34 -8 -32 -4 63 39 70 6 -15 126 -20 -73 40 30 15 21 62 -25 -63 -2 35 1 10 -5 13 48 -66 1 -2 64 15 54 23 -30 53 61 -5 18 -77 123 -43 65 39 15 74 -41 -109 11 18 -4 -6 24 1 9 -61 18 51 54 -70 66 -17 34 16 -19 3 -14 -4 -98 40 -1 16 1 -69 2 4 18 62 -33 -4 -36 31 42 1 -75 -92 17 27 7 -30 48 -61 38 -1 6 101 74 -40 24 -17 -19 -20 -94 -17 2 -19 16 2 -20 -18 32 46 2 -11 -30 10 -53 -40 19 -66 8 7 72 -16 -53 94 -55 12 71 -93 -20 72 7 18 -20 -2 23 -83 25 -22 33 12 9 20 -14 -81 -77 14 84 -105 -54 -49 -71 67 -58 -12 28 32 27 18 -24 20 -51 21 -44 10 -24 -3 -68 -36 -1 -45 -10 -3 9 41 -1 -57 6 -5 1 -17 -23 34 -23 27 46 -29 -35 -10 -8 -27 -20 8 0 -36 0 51 18 41 -14 -37 66 -20 12 -40 -4 -4 -44 69 -16 -18 -15 22 -25 42 54 -64 -24 -13 21 42 20 -15 20 -9 52 18 -14 5 -19 24 -3 -17 3 -13 -12 3 17 4 -51 12 37 7 16 32 42 -15 31 -21 -32 34 44 12 41 -32 -34 42 -3 77 -11 26 -29 45 27 -4 2 -34 -18 36 -118 48 3 31 -31 -1 -22 27 15 -45 6 -34 56 -16 28 45 25 87 61 -35 28 91 -12 84 62 68 -35 -3 18 -25 -35 -48 43 53 39 59 -34 -44 -30 -4 7 30 68 2 120 -21 -14 54 21 1 47 39 -3 70 64 62 -7 -71 31 15 101 3 36 15 8 6 10 21 31 -14 -3 -60 0 16 16 38 -25 -3 17 18 24 -4 -39 -26 21 -35 -6 -22 -14 46 -50 -16 50 -8 -49 -35 32 -26 9 -12 -9 44 10 -15 29 39 -15 11 60 -5 18 0 -52 -46 -10 1 -26 8 1 -30 50 1 -14 47 -74 -17 26 23 41 16 58 0 -19 7 4 -46 -22 38 23 -48 -20 18 -41 34 -26 -19 43 21 -29 16 11 1 -16 21 28 -36 17 -2 5 21 43 -3 20 9 -26 32 -2 -12 -39 -14 5 -61 39 13 39 64 25 51 12 23 -12 36 49 -4 -24 8 -4 -43 -50 59 -18 0 -4 46 -53 22 1 -34 5 -5 -11 -12 -5 -26 2 -5 -12 -33 43 -36 11 -1 -11 35 25 -23 -5 54 33 -11 -15 -29 -4 -7 -42 -12 10 15 26 5 13 -4 -49 -4 -9 -49 -9 13 16 -26 -6 -12 44 19 -54 31 -16 59 38 -14 19 -16 7 -14 -50 19 -41 23 -18 -43 20 -12 16 44 13 -45 11 18 -14 -4 76 6 16 -33 -11 -7 30 75 -56 21 -3 29 -16 95 15 -32 -9 22 -3 103 2 -104 21 -79 80 -27 70 11 33 68 -6 -43 27 10 20 -29 15 15 10 10 -11 12 21 -4 -47 -22 26 86 -29 65 46 84 -39 -103 -33 -8 32 107 25 32 103 37 55 65 -6 -2 19 -38 30 -110 -15 85 -35 -26 -53 55 85 43 -45 64 67 -54 42 -1 -3 47 63 -1 66 -3 51 -112 -23 -4 -9 -62 26 16 66 1 -31 26 1 5 40 -6 -67 -14 57 -59 37 52 71 -27 27 -15 -23 -32 28 -36 -46 24 49 -11 34 -51 -24 29 -29 -19 46 -53 31 22 43 15 23 -14 -8 5 39 18 45 28 43 7 -40 26 20 35 -25 33 17 23 -78 -30 -31 -3 8 18 34 -25 42 18 0 -25 -28 10 -6 -3 -105 -23 -7 7 51 17 84 -41 -8 -22 9 -2 -74 -2 -61 -40 12 6 26 23 -26 -57 -8 20 -8 38 -19 -11 3 -11 -12 11 36 -2 30 -37 -8 29 52 -20 33 9 7 25 6 -7 -4 33 22 -30 19 -52 42 9 72 -5 -11 2 27 40 -8 -30 -17 -23 -21 -65 10 -25 -12 20 -19 -26 10 39 -41 36 1 23 6 -20 -10 -30 29 -28 -39 31 -7 -11 46 16 -29 9 12 -39 2 -9 -27 -8 5 -15 7 -20 -69 -7 5 33 -1 39 1 -38 -30 -16 -5 29 64 5 -32 39 -33 25 21 11 -13 -2 10 66 32 29 26 -65 11 -23 -47 44 -63 24 -27 11 -85 6 10 -19 -40 54 25 -13 48 -33 4 -5 32 42 21 -4 30 -35 -16 -9 35 71 -1 -2 -57 43 6 -15 -10 -41 118 18 6 -26 2 33 -51 52 55 -44 43 -26 54 33 -9 23 6 -14 -65 37 7 99 -14 -27 15 1 -62 24 -34 -5 24 15 -23 50 31 16 -7 15 7 -28 -7 -25 -31 13 -97 -16 24 -25 -37 48 -24 23 -22 -38 -44 -21 38 5 -33 -19 60 115 23 32 -31 50 61 -31 10 30 3 19 -59 -12 0 17 -98 74 22 26 30 50 -79 31 18 -78 67 -59 -4 -22 83 -16 33 -72 -61 -51 15 38 24 34 -28 45 23 27 -37 6 16 29 -9 -43 -76 19 48 12 56 26 2 -30 4 -31 -3 -19 28 -21 -50 52 -17 5 -20 86 -59 25 7 63 25 -22 -65 -36 -8 -33 57 -73 -31 -9 7 -15 -3 21 -20 50 -46 25 -12 19 7 29 41 -51 9 58 -1 9 2 -15 -31 -30 -45 -24 -15 -67 -6 -57 -31 -6 -30 -13 44 -2 59 1 38 -77 -15 -13 12 29 14 -26 6 -41 -6 -9 8 15 -2 14 -16 -6 3 35 -11 7 -8 41 6 -38 -75 18 -42 4 34 28 -9 -33 14 36 -7 52 -3 20 4 53 -17 25 12 -22 -13 -25 -29 43 26 27 5 -8 -4 -44 -11 -1 -14 25 99 37 50 -4 14 10 0 28 8 -108 40 71 29 121 23 13 63 -40 -12 23 31 -65 -7 -24 78 -63 25 27 54 -11 12 -52 2 -20 31 7 -40 19 26 48 6 27 -8 -31 -54 3 -2 -48 -28 -21 100 21 -3 -3 -27 -21 10 -26 -35 -32 -6 -89 5 37 -30 -64 72 38 50 37 -30 -28 23 58 100 2 -37 -49 -91 10 63 -61 75 -23 2 65 16 -31 24 24 56 1 53 57 16 36 79 21 0 8 66 27 -52 1 63 15 13 -69 21 -5 35 -23 -1 -36 -69 15 11 14 -2 1 -28 15 -18 -89 20 97 -32 16 34 112 31 34 -19 -5 -26 -22 -60 -16 0 37 74 52 -12 17 -9 30 -15 47 15 113 -42 -15 40 25 23 35 -38 -8 -3 32 -32 -31 -9 -34 -19 50 -22 25 53 -75 -17 -15 44 74 7 -33 6 -67 -49 -5 76 36 -48 -20 -1 -7 -71 -18 -12 7 4 37 -38 -56 -49 -26 13 31 5 -32 -5 9 -29 -5 2 23 -20 -22 6 10 22 -8 -25 19 19 9 0 2 8 47 -13 -53 7 9 55 49 -1 34 35 -33 -23 12 -22 11 25 -25 28 3 -21 8 43 -1 -2 -17 18 -28 15 -17 -21 45 -16 12 29 -7 -11 -12 14 5 -38 -2 41 -23 15 0 18 -13 34 26 -41 18 51 -6 3 -20 10 19 18 -29 2 -18 -7 -26 0 8 102 -7 32 7 -32 -17 -51 47 31 90 -17 45 61 -44 90 11 47 85 46 31 54 17 21 54 2 37 26 -1 32 -30 26 52 36 16 83 -32 59 -15 -19 -19 45 16 38 82 13 20 -16 60 41 27 -24 127 69 69 -31 -11 -76 35 -10 -9 64 -28 16 21 22 23 19 7 45 23 44 -3 40 17 39 15 8 -21 50 26 61 48 46 79 -3 4 23 85 3 11 59 84 52 84 -106 26 101 54 -4 -39 70 40 36 89 52 -34 -23 13 -28 -35 -9 15 -24 5 -11 42 -56 -8 -20 11 12 21 -18 38 -40 21 46 21 29 32 -1 -12 8 3 -18 20 -3 50 -4 -18 -24 22 14 45 -42 -12 -13 18 32 -17 81 96 -45 63 15 -48 16 -46 52 7 -37 53 22 -35 8 13 11 36 -39 29 41 104 -38 -22 20 -30 -5 44 -31 -6 11 -37 71 -26 -33 -58 -35 -53 -1 -6 -2 31 -11 10 -9 52 15 -50 -8 -22 -13 10 1 3 16 -13 -48 15 -26 -6 -23 8 -39 25 -4 -10 5 -48 -33 7 28 -5 -21 19 -6 -11 34 4 1 -57 36 10 34 33 -20 -6 -11 0 7 -24 -11 -19 5 19 -20 -11 -8 45 27 -25 -5 -10 23 18 20 -51 -23 4 13 18 21 24 29 10 -17 9 -23 44 4 -20 42 -72 5 21 -63 33 -63 -12 -14 -9 20 -11 -38 6 15 -8 7 -54 -9 43 86 -17 -22 21 -21 -23 25 -2 3 -81 -5 58 -64 -29 55 -61 59 -32 127 -19 100 65 -44 37 -2 24 90 -2 11 -17 44 -39 88 30 88 20 87 -39 -75 22 -24 -11 16 75 -19 -91 40 39 -25 0 72 -29 11 -14 -42 -34 74 16 9 13 -28 27 93 36 16 50 90 0 27 49 28 -46 7 -28 25 0 7 20 -17 1 27 57 2 26 -29 18 31 5 67 -55 60 62 17 0 -71 -28 -10 -13 -12 58 67 38 -30 40 -4 21 -18 20 -42 5 -24 -5 22 41 -4 96 21 5 -31 -38 -7 -64 -128 -13 -47 55 76 9 -47 22 -58 -18 24 19 -6 21 39 64 1 45 -33 -55 94 40 -7 91 -18 -23 11 35 27 56 64 -10 -21 26 0 22 69 34 -21 -11 -49 8 37 34 42 -37 -13 -6 -99 67 -16 21 -1 -65 39 35 5 -39 -52 -51 65 -27 7 4 -5 28 -24 24 -12 -15 -1 2 33 25 -26 -48 15 -50 0 13 -67 -26 -9 -35 -48 -16 0 -26 -31 27 7 -21 4 15 36 -14 -14 1 12 -26 20 17 19 33 11 -28 4 -3 -23 -20 -10 -47 13 3 7 42 2 31 2 7 2 23 18 -4 27 -8 -42 15 25 22 34 -25 30 5 -4 5 67 -6 -21 13 -76 19 -17 13 53 -12 -58 43 11 24 11 24 58 7 14 26 -59 17 -17 29 39 -4 3 23 9 -107 23 -24 6 -30 34 -22 8 -56 -34 -53 0 -7 -51 -31 -35 -91 15 9 -11 -85 63 -28 -35 8 -39 -13 -74 -19 -15 -14 -25 -20 85 4 39 55 37 -22 0 -56 42 62 4 56 12 -29 74 -78 -12 -58 68 -25 44 23 -71 14 -22 -51 6 -30 2 4 -46 15 60 0 -6 14 1 -48 -33 -50 -33 21 14 -57 -36 55 -42 44 -4 100 -73 39 -1 -23 -17 -15 59 -33 83 67 -22 43 -19 -78 18 97 -54 -5 12 12 20 29 42 -17 -31 20 35 -44 -5 78 10 -15 4 -61 23 -30 89 1 -17 -28 92 21 -33 -23 32 9 14 -26 -12 1 41 29 -21 38 -33 -5 -86 35 43 6 2 -22 -39 -49 -29 8 10 40 -31 55 -16 -18 8 -37 20 66 -40 32 9 7 -25 -36 4 -41 17 53 -68 -28 39 -1 15 -10 -22 2 -40 39 -23 6 16 -9 14 3 22 -3 17 19 73 8 -23 44 8 22 15 22 43 -47 73 25 25 -12 -11 -13 -1 0 -38 -29 -52 -52 -3 15 -22 16 29 1 7 -15 -3 -6 -28 -24 5 8 -24 -9 54 -13 -17 -2 -4 34 1 31 -22 3 -40 34 25 47 30 48 -19 -27 15 -22 -1 -12 29 1 -14 -26 4 29 -34 36 20 8 25 -13 1 27 -31 6 0 1 19 -17 -24 1 13 1 27 21 -22 -9 51 -60 12 -3 -25 35 46 14 -22 14 -39 -5 39 -38 -19 26 8 29 36 -28 38 120 34 -34 -42 42 58 26 -17 74 71 -82 -10 50 -30 14 97 15 -9 28 51 26 21 -17 -10 -13 59 -4 20 25 46 -85 12 3 24 11 60 -24 -22 39 -4 -10 24 33 58 48 32 29 62 0 -56 -11 9 -49 10 -30 50 2 56 -15 33 33 5 -49 -14 58 50 37 -3 106 46 42 -79 93 52 47 63 -32 47 -6 37 26 -54 -38 56 86 41 43 74 7 79 -42 -2 34 -23 -65 -4 24 -2 25 -70 24 -13 -6 15 -45 -26 -47 91 -18 -25 -40 -7 -19 17 -12 -3 68 -16 29 -25 1 49 11 34 4 -50 -2 -20 -25 44 23 2 -3 86 34 47 -29 -30 -13 18 22 2 54 -1 2 4 -42 -1 -61 18 -9 42 11 24 49 -9 -96 -21 -20 -11 30 59 -15 -19 -79 4 30 -1 5 -33 -6 5 -1 -18 -53 21 45 -15 6 -9 -5 -43 -20 12 12 -78 -27 37 4 25 32 35 -8 22 13 -21 -8 -36 31 -22 -3 -2 -11 -49 3 -12 -36 -23 12 -43 25 -16 -19 -13 -7 14 -31 -11 -9 -30 -16 -35 -13 10 19 6 18 -13 22 -14 26 -9 -9 -24 -4 -4 -27 -7 -34 33 -5 -3 -2 29 -1 12 19 26 8 32 -46 -8 25 -44 4 -7 18 10 -5 -12 -48 35 -47 22 -29 37 -12 -31 -5 0 -24 -19 -28 13 -23 -17 52 17 40 -48 -32 -32 5 17 -24 4 -24 15 25 33 -43 -8 25 4 31 63 -20 45 -34 4 24 22 -77 -14 -61 -124 -31 60 97 -6 -11 -12 1 -46 0 52 66 -22 -15 -15 -20 -31 27 -39 -4 -57 -12 -51 29 0 18 85 37 -4 -31 32 116 -27 64 1 75 -38 16 -13 19 12 15 -4 -16 31 3 7 -63 -82 74 60 27 34 25 38 61 27 -12 36 -36 19 -14 47 16 -15 -35 52 25 -43 14 15 -4 41 -32 21 36 68 16 15 8 -36 15 -19 16 36 -20 -36 -87 62 -82 -58 44 112 41 51 -67 -5 -11 14 -3 5 -6 -17 7 -4 37 37 71 95 -27 4 25 66 -65 -18 30 42 -20 -17 -22 -7 58 33 -27 10 58 -55 30 69 25 61 5 -51 7 2 -14 39 -2 -10 18 -12 -24 3 -28 -79 47 -13 28 -6 -15 39 12 0 -8 16 -22 9 89 8 -14 -45 -16 23 -2 32 -22 43 6 -39 48 38 32 23 -28 -15 -8 32 -7 16 6 65 -18 -9 40 -13 44 -3 15 17 -6 -20 12 6 29 13 68 -8 38 39 19 19 -49 2 -1 1 -20 -22 -2 -12 42 -19 -10 -5 23 -17 18 -35 21 -14 -9 19 23 11 27 -2 9 16 -10 -31 14 -9 -43 51 31 -20 -16 10 -23 -22 -6 -2 4 -26 3 -65 -19 36 8 20 -8 7 18 -20 15 -12 -15 -50 7 6 18 65 38 -11 -15 76 -27 -44 23 -32 -43 53 -58 -54 -70 -67 -61 -32 46 14 -17 -52 21 -3 -13 19 29 24 -89 -47 -37 -54 96 10 -15 -39 4 -6 -59 -25 39 -38 46 51 -1 -33 -46 3 -40 2 20 -38 78 -97 -127 122 -47 57 35 -31 37 -5 -45 -24 9 -33 -87 -64 -58 -9 -89 -74 -65 -51 -60 -53 -23 94 -15 -60 42 -47 -17 -12 -18 20 2 -6 -48 -5 29 42 -6 33 -1 46 30 6 -13 8 -77 -48 5 5 26 6 22 58 -3 -5 -13 -4 -45 29 45 37 -2 12 -9 -10 -24 45 -14 29 -76 -55 -9 46 -20 42 -40 -12 -12 50 45 -5 50 -103 -16 -59 9 37 11 -21 55 57 38 9 1 -35 30 46 -18 -68 98 31 6 71 0 -56 0 2 15 -23 -35 -51 -6 52 -78 -32 4 -16 -48 -48 24 -74 -4 33 -53 39 -19 -19 -13 -94 -8 -14 9 -17 56 -40 20 -15 -12 10 -18 9 -24 88 30 20 -10 11 42 -28 1 -14 -10 14 -24 46 13 -23 -36 2 5 7 -11 19 13 15 11 11 -27 47 -16 4 36 -14 -29 -44 2 -30 18 -16 -16 -14 -23 34 -12 1 11 36 -27 -29 -39 29 4 -11 36 19 -28 22 -39 25 -6 -4 28 13 -28 -18 11 9 -35 -58 -12 52 -45 19 -16 67 3 -41 11 -11 25 53 -8 36 15 19 19 31 20 24 -23 -7 52 -7 59 -2 23 -51 13 -16 -33 -2 25 -52 19 -47 20 15 -29 -1 -43 -2 52 -16 -1 -14 91 -7 32 -51 15 -8 -32 90 -39 -50 15 -16 0 52 22 75 23 76 17 2 41 52 -33 23 77 102 18 -3 14 -19 -29 0 -127 23 112 -19 9 -19 4 84 49 -52 58 38 27 69 1 55 52 -7 -53 16 -38 45 15 78 -69 -35 -12 61 14 85 7 7 4 -44 57 43 -11 8 -9 35 -26 -70 -3 -42 -8 14 38 -23 20 -14 -43 -63 79 -24 -81 -21 -71 4 24 35 33 60 -93 -65 -34 38 39 -1 6 -2 -49 -35 -70 0 16 -18 43 85 -7 31 -72 5 27 -13 50 -27 8 -31 -2 -49 -3 5 -5 118 11 87 -8 9 36 54 23 -32 49 118 -57 -5 -21 -33 -28 27 -29 35 -26 -6 -29 -47 27 -71 -7 23 -11 -76 -93 32 26 -25 -41 -50 15 -68 8 -68 34 67 -8 53 22 -78 -4 43 -44 92 -69 12 -27 48 -14 -49 -15 -46 2 -35 -8 -23 4 -38 -25 23 -3 15 74 -13 -5 13 -27 -20 9 -13 -58 27 18 6 -7 7 72 7 -49 23 10 12 17 37 15 -52 50 28 10 -26 45 -23 -27 -26 -6 -71 -44 -11 -3 -28 31 -16 25 -1 15 36 17 -16 -27 -10 62 8 -42 -15 22 7 26 24 23 23 19 -86 6 28 -35 13 7 -15 -8 17 0 -24 -13 -66 -8 13 20 14 82 -26 -28 18 32 39 -21 -1 7 -29 27 -40 -9 -24 -59 -69 5 -51 28 48 -19 -7 33 -62 20 -24 -41 -26 -5 -6 27 -43 20 4 40 36 -17 11 27 -21 4 4 41 -2 4 20 -1 14 -23 -14 -68 46 -10 98 3 30 19 -39 48 58 -13 -27 70 19 34 23 46 -18 -46 -26 -70 81 -36 14 -24 7 -36 73 34 0 -8 -4 37 -86 -11 20 -1 4 55 -18 -84 5 -44 27 43 -19 -110 28 -46 -72 -9 -75 63 -28 -34 -13 -60 -8 -4 -21 8 79 36 31 -26 -39 20 3 -44 87 -35 -25 0 5 -62 -37 -3 -6 71 -42 -10 -21 46 -36 -4 7 -63 22 10 -48 45 1 -37 6 -6 -33 7 -9 45 20 37 52 34 -29 18 44 1 -45 5 15 24 -72 50 65 18 54 -27 -13 42 1 10 11 41 43 -25 5 -31 31 15 39 47 -50 -26 15 55 -6 -45 4 -22 -24 19 -18 43 -26 -25 -23 -23 59 -8 -32 46 1 -5 -24 -8 -55 -26 40 -19 -5 22 14 -39 -35 7 39 12 -1 -14 11 -19 18 50 3 -24 -16 -26 34 5 -20 13 -1 -50 25 -19 -39 -29 7 8 10 -17 -1 -48 21 20 -3 -21 5 -37 -1 1 -14 -13 30 40 -17 2 -99 6 38 3 44 -21 5 0 17 27 -51 18 -7 19 -46 34 12 32 9 -17 22 14 24 17 40 -22 -27 5 4 -24 9 73 27 13 43 8 59 23 37 88 78 7 22 89 67 36 15 42 43 -37 -23 -71 -5 -20 -23 -17 65 36 20 63 -55 16 40 38 52 63 -16 -4 66 120 -38 20 -5 20 18 72 20 -42 14 42 -20 1 23 -69 -42 85 -12 4 23 31 -20 -19 -37 -8 -32 -26 38 0 3 -27 12 71 37 -12 -11 25 15 20 -83 -50 25 21 -71 -13 35 -35 -14 -6 10 -20 16 9 -15 9 8 46 11 1 61 14 33 40 33 25 -33 -70 -9 -39 -27 -6 102 -18 -46 83 1 -17 -22 121 43 -39 33 23 -1 33 20 3 3 71 24 -14 50 26 -5 44 22 43 -9 -28 14 -16 125 20 -12 16 -69 -4 31 -23 33 -94 35 40 10 22 -22 -11 46 -13 71 116 -41 67 3 -3 0 -34 15 16 -21 -53 23 -16 6 -30 84 -27 -43 38 23 -26 -33 32 3 1 1 55 -1 -21 -14 45 -21 31 18 -18 30 -60 -52 -45 46 -13 19 -54 -18 30 26 4 7 33 48 -28 -58 3 21 -4 -24 31 -19 -13 -24 -22 -22 1 12 24 -33 -31 -10 57 40 -49 -1 -32 -12 -2 -15 0 27 16 62 -7 -21 -13 -11 12 -4 -10 14 -20 -5 -14 -45 -20 3 4 -26 6 -79 65 17 43 -34 -11 -50 -15 -54 42 14 46 9 37 30 -9 -27 11 -55 10 -1 39 -19 -26 36 -31 -51 -5 -6 -44 -26 40 -7 39 -1 -52 6 31 -25 51 -43 30 12 74 57 3 0 -5 -27 6 -21 43 9 -66 107 55 -11 90 32 7 -23 56 88 127 -33 5 29 8 89 93 17 16 -12 -39 -9 43 27 44 11 -4 53 78 46 127 77 1 27 62 -34 51 77 49 44 6 121 77 60 18 6 60 -2 37 57 60 4 3 4 28 -23 45 66 39 19 5 54 -66 57 -36 -4 -17 5 6 39 -14 53 -10 -28 86 -4 -1 49 -2 56 42 77 36 -28 123 71 -25 62 -42 36 66 -15 55 -2 44 43 12 -16 1 20 -14 -31 23 3 -3 -31 -54 -54 -34 16 -1 3 24 30 92 59 21 1 -8 -64 -68 -56 -16 -66 1 -58 -17 -26 41 38 23 7 -15 -11 -42 21 18 60 19 -7 23 22 -82 -12 25 2 90 16 17 66 49 2 19 19 20 16 0 16 20 44 17 -20 7 -24 -9 -83 -18 -81 -25 -10 16 -39 -30 -4 -40 -8 -55 -16 -6 -15 -61 -2 60 7 -19 -17 -20 1 14 2 -4 -10 -39 35 -7 -43 3 9 3 21 -20 -24 6 -13 -30 -52 -23 21 37 -6 -24 -2 -21 -21 29 -43 22 -10 1 49 -21 -12 35 17 -6 -39 21 -1 -12 -13 25 -2 -2 9 -12 -21 -4 0 21 3 -2 22 33 -42 32 -3 10 -5 -10 -9 55 -27 -8 15 -14 -40 -27 8 -12 -7 15 -33 12 12 -29 -5 -20 -11 21 26 23 7 17 9 29 2 -3 -8 -29 -36 -86 -25 3 19 -80 54 18 78 -6 -13 39 13 8 58 18 87 24 30 31 -21 -30 42 42 -52 -12 7 30 11 34 -26 -38 -55 -54 7 -11 -75 20 -2 84 -22 43 32 -3 -10 0 14 58 6 -94 -5 29 -28 46 -60 -62 50 -22 -85 -15 47 -33 45 28 -19 56 -16 -28 40 28 10 47 40 32 36 -10 7 16 34 -18 -28 23 -12 20 28 -52 -20 74 83 29 -50 76 -38 126 -24 -39 -2 -30 33 7 29 -12 -8 -9 -34 3 37 -31 19 -8 14 17 -16 -38 -10 25 4 15 6 20 22 89 20 -31 -11 -22 5 29 51 6 -10 -57 49 48 -30 36 -40 -16 13 -6 39 -21 -51 71 40 -65 16 -14 63 7 -52 -26 36 21 -10 47 -22 16 -27 -12 1 6 -11 -23 1 20 -37 17 -20 -101 1 -17 18 61 24 3 -78 -25 28 37 -5 -77 -40 42 9 0 58 -23 6 -7 37 11 13 -30 -28 32 24 77 37 -15 -45 -10 10 -43 -8 12 8 -9 10 -68 -17 50 8 51 -36 -23 9 44 -6 -9 -15 -40 -7 -10 -35 -44 13 -47 -33 45 -21 17 10 18 29 20 -2 17 8 -1 27 1 1 29 -45 1 -34 -3 -14 3 25 -17 -10 14 21 -9 -6 -3 39 48 -7 28 61 17 -16 -28 5 31 -5 0 -15 -19 -11 1 29 -10 41 33 0 19 -15 5 34 -19 10 8 -17 -95 43 20 -70 40 52 -44 11 -25 18 -32 -1 24 -55 23 13 -1 55 -3 23 12 -1 21 -59 -20 -11 36 21 116 2 78 21 -71 17 -125 -43 40 -2 22 -103 37 -46 -116 -27 -37 2 54 -9 21 -21 6 20 -9 84 -20 46 46 -12 -31 -82 -38 82 -44 20 -27 -6 125 24 21 23 48 -26 -18 34 -28 28 33 -43 67 55 -54 50 -10 38 -5 -11 -48 -43 86 49 19 8 120 -59 -46 2 43 -50 35 35 -21 -19 -2 -34 23 30 26 32 14 -20 52 -19 -52 -11 -66 3 -3 6 48 12 76 29 76 -69 35 9 23 59 50 -32 -80 -45 -46 18 115 -103 39 21 -87 54 14 58 -8 -91 10 21 57 -6 112 32 -38 7 4 19 -65 20 -3 -26 -26 33 -2 22 6 27 -24 103 -48 -42 -22 -27 32 15 28 -104 -30 14 1 0 17 24 -26 -28 -16 36 3 -13 -18 45 114 -14 5 -40 15 8 -3 -32 47 -23 46 38 22 40 -42 19 -22 -11 24 31 22 -21 -40 25 34 -5 -20 -7 -24 51 -9 -22 -18 -7 -5 -17 10 -18 -25 -6 -73 -47 24 -9 117 3 35 -4 -38 -41 -24 -15 46 23 23 -13 -20 -24 -27 -8 -7 8 -18 -47 -15 -67 -43 -9 -23 -16 -13 -23 -2 1 -2 53 -11 44 -1 1 36 -12 -18 -27 54 22 -17 5 6 -7 52 20 -19 -8 24 3 40 -16 -71 50 80 34 -80 -124 12 -20 -63 74 83 -28 -74 125 53 15 -61 -35 43 -85 95 37 -62 -9 64 19 54 23 124 -32 52 -83 70 -71 76 8 -8 -1 57 44 15 3 57 58 -52 -11 62 -48 23 -87 -118 -6 -16 -37 -1 85 -10 44 -13 -6 -30 33 -40 -108 57 -2 23 36 18 25 -80 29 60 -63 125 -13 12 -31 35 -2 2 11 -35 57 38 -54 -13 -14 -39 -16 33 15 -41 31 67 6 42 -33 72 -35 112 77 -10 23 -40 0 67 -121 -7 36 9 -119 63 63 49 -91 -77 -55 27 37 -35 53 -52 12 45 5 -71 -61 28 49 -100 86 17 -68 -14 -18 38 7 -66 57 -14 4 24 -117 43 47 33 -13 42 41 125 89 -30 -16 47 -5 -56 39 -33 -99 19 -41 -40 14 16 -85 -100 -44 -19 -18 51 -121 -57 -8 21 23 -71 10 -11 27 -54 -8 -45 -6 9 21 -9 -17 37 120 -59 23 -16 72 1 -4 26 33 6 -6 -24 -24 -96 -41 40 -72 -51 -10 12 24 -27 -39 46 12 -26 -35 8 -1 5 38 46 -46 -5 -8 -6 13 25 17 -25 55 -15 46 118 64 4 7 -58 -35 -11 -4 -13 -51 18 5 22 -28 42 -7 -11 3 6 118 -22 27 7 -82 28 51 -57 28 11 4 29 -51 16 -14 -25 49 -12 -19 -14 -47 8 -16 29 89 -2 18 27 -119 -7 3 14 -32 -19 25 80 9 43 22 3 -84 -7 -17 62 16 64 -33 -3 118 65 -1 -50 -8 -91 67 -11 -19 55 71 37 24 49 -8 40 12 79 -101 8 -6 19 -40 -5 39 40 -31 44 -12 -15 26 -34 12 -62 -13 9 -36 33 51 58 -40 -22 -76 18 36 19 -43 -15 1 65 -54 31 6 123 -78 -63 8 37 -12 -12 -30 -58 13 2 5 65 79 10 -76 24 -52 19 -72 58 -1 28 30 124 32 -36 14 -33 16 16 -5 -61 19 -116 45 -19 85 3 -1 100 -32 39 -31 -81 7 -12 -34 24 -64 -25 -9 -70 68 -33 26 -22 106 20 45 -56 -10 18 39 -10 -28 27 62 38 17 6 -57 112 32 35 56 -35 15 -19 81 -6 75 -11 13 82 -72 -28 48 80 32 44 67 -25 73 25 -51 40 11 21 -9 -36 -22 -108 -24 35 -19 15 7 13 13 -25 -32 36 -55 -2 -45 -27 -31 13 21 -53 18 -2 27 -109 42 79 -69 34 28 1 -35 -29 -27 -72 13 -48 1 -11 7 -23 2 20 -40 2 -24 5 40 -7 14 10 56 47 58 -39 -1 -49 27 -38 12 39 -15 -17 -41 -2 13 -14 33 -6 -23 -50 41 6 19 -18 -19 -3 -25 -16 2 -3 31 14 -7 28 49 28 23 2 23 -5 -27 -15 -1 3 -39 33 4 -72 -11 -27 17 -18 -3 3 16 34 7 -42 -3 -10 -61 -2 -21 -26 24 28 2 7 27 -5 16 30 -16 12 -36 50 26 127 47 36 4 34 43 21 27 -25 22 67 13 23 64 17 19 34 80 84 -42 -7 48 28 6 23 16 13 26 33 22 53 -3 24 -28 32 -36 52 -66 4 6 -11 20 33 6 -29 -49 90 18 67 56 3 -18 30 9 3 49 8 1 2 40 49 -6 5 99 7 104 43 -18 -2 5 21 -7 -46 -38 -24 -33 59 25 -31 28 7 9 -26 80 40 -44 -27 66 7 54 -8 1 22 22 -34 -13 47 -11 -3 -50 38 -19 46 -3 15 7 4 19 -21 17 49 95 3 -19 12 -22 -7 -20 -19 -55 66 72 -23 6 67 -50 53 16 80 22 21 -21 -58 0 84 75 32 40 39 -10 59 -41 -9 -3 -8 -31 17 2 28 -102 -36 -62 19 31 7 36 20 50 61 -48 -13 29 40 -97 54 38 26 28 -29 -32 65 -17 -25 -17 -14 -45 -3 -17 -77 23 55 -34 5 59 64 -4 -29 18 -29 32 81 14 65 14 -33 -8 -14 6 24 86 -3 -66 8 35 -17 -24 -10 20 -50 -50 -18 -33 -35 -2 14 -3 -28 -1 16 15 -23 -25 -81 -21 -36 23 -33 14 -12 1 -8 2 -33 -4 -6 14 30 -11 27 0 18 -27 -31 -30 -25 -25 36 -65 -12 27 -20 -18 -10 11 48 3 -22 -25 -22 0 -43 -22 -29 -11 -39 -4 -16 5 6 -13 -26 -7 -30 22 12 -17 -3 12 13 -7 -2 -17 -37 2 46 -14 -25 -12 -28 15 -61 34 42 85 7 -48 61 12 102 64 44 -49 -4 52 35 -42 106 -43 -61 86 24 -24 -2 41 29 55 30 24 79 -19 10 98 56 -2 -38 39 33 -37 35 45 21 -33 12 -19 -57 64 2 -48 26 41 22 -17 24 10 48 29 57 -28 41 15 -21 -14 -20 -18 82 82 19 24 21 10 -13 -5 83 -10 -94 42 23 69 11 -3 29 -47 -125 -47 2 49 11 -9 63 -34 45 31 -8 -6 63 -25 -67 51 -22 -15 -10 30 4 31 -4 -18 -50 1 -2 18 7 15 7 -7 -48 -4 4 10 -51 6 -41 -8 -12 -12 -22 -49 18 89 59 13 -57 1 39 23 30 -31 62 6 -30 -61 47 -29 20 -45 -13 5 1 12 18 -2 12 8 22 -17 32 5 45 4 -68 -23 -5 50 47 -8 22 -5 -24 22 -3 5 -30 57 0 -1 -48 26 52 -13 -64 31 -33 -19 38 -44 9 -41 16 -31 -31 27 11 -58 1 4 49 23 -1 9 16 -27 2 -15 -21 27 -36 -5 -3 -37 16 -2 -9 -17 25 5 11 -21 -14 10 -37 -31 18 -2 32 -9 9 46 -6 21 37 16 -13 29 -17 30 -35 -5 3 -40 32 -2 17 -22 9 10 23 5 29 -8 -29 -78 3 11 52 4 7 -3 10 -16 23 -19 3 -13 -51 28 -11 -36 -6 -5 27 33 -53 -23 9 -50 64 1 -9 27 -2 -21 35 7 -69 32 -10 -18 -9 56 18 -10 -33 9 31 -87 12 -4 -24 -25 -5 9 -7 7 -38 15 49 1 -27 2 14 -43 14 -22 -7 -18 53 7 -23 70 -53 -6 -76 24 -35 -11 -22 19 -10 -113 38 -1 15 -27 -21 31 -74 -39 9 2 53 23 -4 12 -16 -81 -32 -7 40 -37 10 3 -30 17 28 -12 -43 67 -13 -7 7 22 -1 32 15 -17 -21 -20 -7 19 57 14 -32 -14 28 39 69 40 40 33 -43 -40 -6 66 24 12 -11 -52 15 45 -10 25 -22 -16 -14 45 -5 -17 -69 101 -23 1 43 -28 -13 32 -32 27 81 11 -4 33 18 -49 45 49 -15 106 -33 -11 49 6 97 66 61 -3 2 -1 79 -36 -1 -4 25 -53 39 1 -7 10 -6 -77 -24 62 9 -23 76 -41 12 12 -17 50 -20 25 -6 -2 -13 -5 13 -5 -12 -16 21 -19 31 -86 36 -38 72 47 -31 -16 13 -64 -31 43 -3 -14 50 -10 70 -13 1 -22 -31 31 20 3 -4 -45 -31 9 18 -54 19 -57 6 16 28 0 -20 -12 16 21 -20 -20 19 11 -13 9 1 30 -2 -23 -29 -11 -5 -17 -53 -2 -33 -38 -33 43 5 0 -12 6 -33 33 13 -3 -22 -10 -5 11 -40 24 7 -32 34 -1 -60 -20 -28 -27 -9 -43 27 -25 -44 -8 -9 -8 -3 -8 -30 5 -1 27 9 -19 13 -14 -18 -28 67 36 19 -33 22 -4 48 18 78 42 55 2 38 30 14 59 22 74 4 34 -11 59 -90 -3 -35 44 30 40 -12 -41 -16 -23 -2 26 -1 6 -1 127 -39 66 16 -12 -41 18 57 85 -41 8 2 -5 25 -27 -42 12 -3 17 23 27 -35 7 40 -23 32 9 3 47 51 59 -35 -6 -6 33 78 23 61 83 38 -2 33 86 10 -13 60 -25 3 22 -15 -19 51 21 34 -21 2 54 43 -1 39 116 46 -13 2 13 61 -19 14 -32 6 35 31 24 15 -25 -12 63 -39 28 47 -20 6 11 -35 -24 15 2 -52 28 -38 85 2 -11 5 -8 34 55 -15 -51 -11 -30 -21 -19 20 12 25 34 -2 40 -8 -7 -5 26 -12 -12 76 50 -2 33 -21 -12 77 -31 -39 6 16 -4 79 -6 39 -16 125 4 19 41 -38 7 -4 -26 38 2 -15 0 4 8 1 40 -91 -15 35 2 -49 -44 58 5 -47 4 16 -44 -14 -9 -46 -7 -24 5 -28 9 -17 15 -45 -15 -9 -37 12 -10 2 10 47 -1 -23 8 20 -25 17 10 33 -42 -23 0 14 -7 -49 1 21 -22 28 -1 32 27 32 -28 6 35 23 38 48 -22 22 31 48 18 18 14 3 -35 24 -23 1 -33 26 -44 9 21 -2 -21 37 -41 -7 -5 35 9 24 -41 -5 17 -17 -25 -17 17 -18 11 12 -12 -33 -46 -6 -21 -21 -47 -19 14 38 -10 40 -61 11 -20 -46 -12 -82 4 -17 38 -32 8 38 -56 52 -8 38 34 19 15 126 98 -46 56 -6 124 127 87 35 31 -33 -30 -23 39 21 41 69 -128 -42 -12 49 -8 -33 62 -28 -69 71 -29 22 -19 24 -7 -16 13 36 0 62 -15 -25 8 0 40 13 57 12 17 23 -9 -42 5 -9 -3 67 -36 39 69 45 46 10 -14 18 73 15 39 61 49 -52 -53 11 0 3 35 -36 1 43 65 -3 4 -17 -62 21 72 9 86 -46 17 -50 69 4 4 -15 51 86 28 100 65 47 -23 -31 -15 -27 -43 -81 21 58 -12 56 -23 -3 33 15 115 -14 90 -8 118 37 62 80 56 2 102 -4 -4 -57 11 -5 -14 89 42 -80 5 18 -19 24 12 82 -81 -21 -73 7 12 32 -36 36 -84 5 27 83 -79 -30 36 -12 22 28 -7 0 42 6 12 66 -12 23 23 53 7 73 43 -11 -24 -30 127 26 3 30 -50 36 -10 6 10 12 -23 -45 -26 -1 62 16 108 8 22 -44 -12 -30 14 40 -8 -2 -6 27 -27 -12 -7 9 38 -34 -11 -22 -7 3 -14 -66 21 26 18 -28 -19 26 -46 -6 -41 -4 8 8 -39 -67 -27 -48 3 48 35 -24 10 -3 23 14 29 -30 -27 9 -24 -67 27 -18 -7 -9 -9 35 17 -36 9 24 60 -45 13 14 21 0 3 0 0 -21 -61 -11 1 0 51 0 -36 11 -1 17 32 -18 41 8 1 -35 -27 3 25 -45 -17 66 47 -40 46 9 10 24 -56 34 70 -12 116 7 69 -6 -2 27 88 -10 3 38 38 14 -52 30 -65 62 -28 34 16 83 -50 -43 -38 8 -8 26 -17 30 74 29 -25 7 -10 91 36 -24 -19 43 11 -41 24 -26 4 -47 60 -62 -52 -45 -22 30 37 56 -28 9 61 -7 -29 29 76 -53 -45 23 -18 22 3 1 20 9 104 11 35 -43 -51 -12 18 102 -40 -36 23 42 -61 12 -10 -29 9 10 47 -38 -12 -61 29 -2 -27 -11 24 -59 -9 42 11 45 -66 -43 -14 39 -77 -15 -4 -18 -77 4 19 34 -40 4 -34 38 23 75 -57 49 75 -21 57 42 -12 -5 -67 51 32 39 43 -71 -39 -37 51 -5 -1 -9 9 -93 12 -2 -11 -72 5 0 9 -17 54 16 -76 57 31 35 44 -11 63 -21 38 -8 17 -58 67 -75 -32 72 24 -99 -34 26 16 50 0 -23 15 -29 -31 -47 -38 13 7 6 29 -51 17 21 30 -8 -11 -3 29 -24 18 -14 -19 8 -26 3 35 48 4 13 0 39 30 -8 3 -7 -2 4 41 15 -4 -13 36 -4 38 -23 6 48 -26 -11 24 7 22 11 -11 -25 -21 14 -26 -1 32 -8 -14 -3 6 10 -2 19 -15 11 -39 -26 -13 15 -8 -47 29 -33 -29 -6 -12 27 16 30 16 -8 4 -27 72 -9 46 37 60 2 31 -31 13 90 48 12 20 -9 58 -66 -13 -5 71 -2 7 13 12 -48 -36 15 44 -29 -40 -9 13 -13 -10 -1 -96 40 96 9 46 -1 -26 -2 -7 -1 2 52 86 -113 -15 96 -9 4 23 46 41 -5 71 4 -19 73 54 122 -76 35 42 -61 23 75 18 23 85 -58 -111 90 41 58 -51 17 -21 10 -32 23 25 15 -49 5 -103 -11 -16 16 -3 -95 27 17 48 14 -58 -45 87 56 30 26 -21 41 13 -9 -12 -19 -89 49 48 -28 -1 20 11 -23 1 19 -47 -77 -6 -37 -11 -18 19 1 4 -36 14 -12 60 -33 -2 55 -3 5 22 -23 -8 -38 -17 24 -47 -32 -27 126 23 -89 -21 13 2 -8 -42 35 -36 -64 -76 53 -80 28 10 37 73 29 66 84 -16 -33 0 13 -39 0 -30 -56 -3 -18 -34 44 2 28 5 42 -34 -65 -10 31 -90 -17 -2 -6 58 -9 -36 -12 11 -7 -62 -8 -6 -38 45 -45 -13 -2 -51 -2 -67 -10 -18 -38 -12 -71 -24 17 24 63 -8 -39 8 -13 -5 -5 9 -8 13 -18 5 43 17 36 -69 13 6 -42 30 23 -43 35 40 -31 27 -21 -15 -21 13 -9 -10 35 11 -9 -7 23 -6 71 -24 -19 40 -19 4 17 34 -36 -9 -21 -49 -31 30 35 16 -24 -33 -9 -22 4 -63 74 50 43 22 57 -14 22 -21 -28 -53 -69 21 41 -35 6 12 1 -34 -4 -41 -17 -41 83 60 -51 -3 -82 -31 36 4 74 41 -6 65 -6 -2 -9 -35 -45 -20 5 -72 3 48 -36 -26 -50 24 -21 -8 62 -32 -21 28 49 -76 -7 -41 25 15 -65 22 23 -19 90 -30 -18 107 33 -11 -16 108 -5 17 -69 43 26 15 -1 13 -44 28 40 71 43 69 56 7 21 40 -10 -26 -8 61 12 55 -9 16 -31 -9 14 24 -1 3 -44 -39 -9 -23 58 72 127 94 82 60 53 20 -25 2 -32 -7 -24 -21 -8 48 72 -55 34 18 48 -12 10 -56 77 -39 -19 -5 22 49 -14 17 124 -18 27 10 -28 -4 103 17 67 57 12 76 -4 8 -6 -84 -5 18 25 -6 35 -23 32 47 -5 -27 12 -85 13 -2 -28 -64 -6 -57 5 7 36 -53 -86 -9 10 -14 -20 19 -44 -75 -62 -46 48 53 -50 17 -29 -19 -1 -9 56 -97 -9 -93 -47 22 -18 -68 11 -50 -25 12 -31 -37 -12 -57 127 25 2 -11 29 -22 18 16 -38 23 5 7 9 -14 -32 -34 -7 56 -4 -4 3 -4 -102 8 0 11 32 5 43 15 -40 -38 26 22 7 24 -45 -1 -35 -16 5 2 -8 2 -10 -9 1 -35 20 -15 -32 -18 -10 -12 -45 52 3 16 -9 25 -26 -1 -1 15 -2 48 34 3 -22 -39 -18 -1 -34 -23 7 23 15 30 2 8 27 24 24 -38 -26 8 16 15 -32 16 32 38 28 29 -32 44 46 -7 -46 -46 -82 16 -97 53 42 3 -21 122 -27 51 -7 -10 -6 36 48 -26 73 -60 -34 25 27 99 28 -17 66 84 -4 55 56 23 125 -62 11 11 50 46 12 34 55 9 -45 22 39 1 28 10 -8 -61 -4 44 10 -72 6 31 32 -46 11 -29 -26 -3 -54 -95 4 -28 90 -13 -41 -22 -53 60 -14 -15 -24 45 26 73 -26 -12 -18 50 -54 53 29 48 -37 -7 23 -89 44 89 17 14 39 3 33 107 3 0 -9 21 29 -72 -57 17 -37 36 31 -51 -25 -42 -6 82 -85 120 30 -14 42 -29 -24 23 -55 -4 23 -40 34 41 38 -19 46 34 11 -72 29 -48 67 3 118 16 6 -80 -14 15 23 -30 36 7 -6 -78 -23 -17 50 104 -49 41 -12 24 -124 -8 -23 -29 -61 59 55 -14 20 -41 22 8 56 1 31 83 -55 -82 -15 -30 -44 -10 13 52 -64 40 -29 -35 -19 10 -80 -10 -74 0 28 -24 21 -35 7 -13 -4 -2 15 -61 21 -25 -27 -12 23 10 -37 -5 -23 -10 -17 47 8 -22 -58 19 51 -9 1 -64 41 32 -34 -10 34 -45 44 32 -1 36 -37 -10 -8 -68 16 -115 28 9 -46 39 -37 1 64 33 7 23 15 7 54 -7 18 -26 -31 -20 -2 17 -19 8 30 -21 21 71 -3 1 -28 19 23 6 31 -30 17 -19 -21 -54 -34 -23 10 2 -16 0 -54 11 7 -10 -13 -18 -28 -66 -106 -33 -60 -39 -2 -109 59 -5 -17 -3 -127 -8 64 -77 -39 8 42 -58 86 -30 88 4 -74 30 -9 -11 47 -18 92 18 49 -48 -39 -40 40 53 71 32 9 -27 61 -7 -30 21 35 -27 48 9 100 -28 -33 -44 -5 -65 0 -56 -22 -73 38 -52 -10 64 -33 -11 -6 25 38 -25 56 -62 1 1 27 -66 47 30 -24 -48 56 66 -50 7 -17 75 -34 10 -30 30 -24 36 28 -27 -66 -44 -41 -12 -45 52 -20 -8 -29 43 34 9 27 -31 30 4 -26 15 -47 -60 -13 -34 -11 14 103 -40 10 -64 46 -93 -12 85 41 -20 -41 127 -31 60 7 45 49 -66 -47 -124 0 20 -2 29 34 103 53 -55 -39 -64 27 109 -20 -21 -2 -44 -19 8 9 -22 124 45 28 26 -8 -101 43 24 11 41 43 75 29 20 -21 -14 -22 -2 108 63 -85 47 -50 79 66 -13 -11 82 38 29 -13 23 2 -49 -2 -10 -15 -1 -47 36 -44 33 -17 14 6 15 -45 0 5 -11 22 -12 5 18 19 -30 24 26 -6 3 -29 -6 51 15 -5 13 -7 -15 2 2 9 -21 -17 -9 -54 -5 -28 45 12 -24 -25 32 33 -29 -13 -7 -14 28 -10 -2 8 -6 -9 1 24 0 -6 -5 -6 3 22 -60 35 -36 -20 3 9 34 -24 5 -11 -12 -6 -13 39 14 -19 -3 -4 0 -9 17 -34 -6 10 -9 23 13 14 -7 -14 101 114 -2 33 -23 33 79 9 -3 5 26 26 -48 -15 10 10 30 2 19 -37 66 19 -6 5 28 -31 -2 36 33 11 50 54 19 62 49 4 41 -68 51 18 14 -79 10 -6 -22 114 -5 10 42 26 -17 34 6 -68 -114 35 18 -47 16 -17 20 32 17 36 17 1 29 74 16 13 -7 -14 44 51 79 27 -48 -34 2 16 -44 36 -14 26 -57 33 77 81 17 14 10 -12 30 -14 24 -14 -59 1 32 -18 -39 42 -127 61 -8 21 2 -9 34 -81 -9 -49 43 12 -14 -12 -15 53 -34 -31 55 -57 31 22 -40 -34 44 -61 19 4 34 52 -128 77 -28 35 -44 -16 -67 13 -69 84 -28 9 21 -17 -25 7 15 45 -58 7 -12 -7 -3 2 -15 11 5 -43 -31 -2 28 72 -21 -36 -48 -14 -27 9 -43 -17 -11 -2 9 70 4 -14 63 -25 -36 -54 -26 -18 66 15 127 50 -60 -4 52 -41 9 -68 12 -3 16 -37 -20 -51 -42 -3 -20 16 -24 47 25 -27 27 14 -15 -11 -11 25 -46 -9 -17 -13 -30 22 -41 -3 5 46 36 30 31 14 -14 9 37 20 37 54 24 -13 3 34 7 17 15 3 -14 -13 -3 -44 60 -2 26 27 -9 -12 -32 -17 -110 19 -9 10 33 -13 -6 33 66 -5 -38 12 -8 -24 3 -15 26 -33 -15 -19 -6 26 -27 11 2 29 27 -21 1 -25 1 -64 -20 31 31 9 -3 83 -29 12 22 -20 43 -20 123 -32 -15 26 78 -85 -6 -18 -11 115 -17 1 -18 -37 -20 -60 -49 -55 -55 -16 5 -55 97 -37 -69 -104 -28 14 -52 -16 -87 60 -116 -104 -43 33 -49 38 -11 65 -70 -28 -17 22 -62 -100 -37 -26 2 -21 38 -57 44 -40 23 -20 -53 -65 -17 41 75 -66 2 23 29 0 106 47 -9 27 -69 -14 -58 56 21 65 28 47 16 -70 -11 43 88 -85 -28 73 -6 75 7 7 40 55 -9 -5 -19 -38 59 0 -38 17 -31 40 -17 -46 -85 -81 -15 38 49 -64 -45 -6 28 -60 23 12 31 6 -22 -15 -26 19 97 -28 121 16 25 -25 -18 -6 3 121 -11 -22 13 -34 -43 23 120 -81 -13 40 23 -50 -128 -78 12 -43 -46 -15 -61 72 13 -81 -82 -9 -35 -109 -48 44 -36 30 21 -23 -32 -4 -35 104 -5 9 59 39 -29 -86 53 -83 41 -50 25 25 1 -9 12 -37 10 -2 28 11 -2 -18 -46 12 2 -27 9 -6 22 -10 33 39 -17 2 35 15 -7 28 39 -47 14 13 -7 6 -23 -21 -30 20 -45 0 59 -36 -5 37 -4 4 -3 17 22 -101 -12 -1 13 13 40 9 23 10 -52 20 37 -13 29 21 -3 -28 -83 53 -2 -25 64 11 12 39 94 28 56 -24 20 -35 -13 -5 -33 10 17 -28 21 -12 8 63 18 20 14 -13 26 53 16 -96 45 25 11 41 23 -39 52 -12 24 17 -47 25 23 -33 -25 20 -40 -23 36 -22 6 45 55 122 -42 18 -57 -46 22 39 1 4 -27 -57 22 -11 -5 -66 -11 65 -3 85 -33 -31 4 -7 24 -35 -17 26 86 58 37 18 -117 4 23 -31 32 -14 26 4 7 -65 34 -15 -62 47 -76 17 -42 41 -63 3 -58 3 -3 3 -3 54 -24 21 36 -28 -9 -10 49 37 31 5 52 -28 87 -25 11 -19 -19 -59 -19 23 -42 46 -26 -8 -23 92 50 -51 66 22 9 60 27 -8 17 -16 6 -89 -22 8 -35 103 -58 -33 35 37 78 18 24 -64 -41 -53 -11 10 17 12 62 -5 -47 108 85 14 63 37 20 35 -39 29 23 73 13 -71 2 2 -26 22 -17 17 -2 22 1 28 9 -60 41 -31 10 23 -7 -38 22 82 9 36 46 -41 6 34 -119 -36 -60 -22 -3 13 42 -21 49 2 -2 -63 36 11 -28 3 19 26 17 -14 -17 37 4 5 -27 7 -21 1 -16 -27 29 0 39 2 -5 -8 36 32 1 7 -1 -11 -15 -47 40 25 -36 -61 16 14 -11 -12 0 -16 7 75 25 -24 0 5 48 -42 6 -54 4 -37 -4 -30 30 -51 17 -27 -10 26 -9 -26 24 18 10 30 1 -18 -36 29 -8 -11 -13 -31 -63 36 44 4 -4 30 23 -13 34 -32 -29 -12 37 -37 -22 -35 -25 -19 -39 -15 17 8 -11 44 6 39 17 -55 -15 -11 -58 -38 24 -22 -65 -10 12 -37 -1 -43 -30 -63 -12 6 -20 -79 42 -70 15 -30 -4 10 -55 20 -37 38 49 11 31 -33 -116 41 71 -10 -42 -51 -21 12 53 -20 29 -22 -14 92 65 10 -31 20 -37 -88 -18 -94 7 11 32 -12 46 33 -40 3 19 18 16 -8 51 40 26 -37 -1 4 -85 26 32 18 -7 -55 23 9 -12 95 -1 -88 13 -27 16 -19 -22 35 31 72 -21 -60 -65 -39 6 -40 23 -10 -36 50 21 -29 -33 -44 34 -16 2 27 -11 -35 11 -17 42 -6 26 40 7 1 -23 21 38 69 30 39 -41 33 13 33 23 -19 -70 -4 47 -47 -1 -7 -27 31 15 17 11 -60 -43 3 8 -80 -42 61 44 -36 17 7 19 3 -83 107 49 58 -17 5 5 -18 86 52 -19 14 -3 98 12 102 10 2 4 32 32 -19 30 -10 11 17 -30 -49 -4 54 14 66 -10 -18 48 -29 -30 28 96 -14 45 -14 -20 21 -30 43 -35 -23 -4 -1 11 -61 -10 -70 -21 63 1 -27 67 19 26 35 -7 -53 48 7 -54 -32 19 -9 17 -17 24 12 10 -28 -32 45 15 21 -36 4 15 -55 -83 25 -16 -32 -64 -20 1 -49 9 11 -39 -8 -5 12 -28 -21 33 -10 -23 1 -18 -21 -41 -20 25 -48 21 33 -13 13 20 38 65 18 18 11 0 -46 -20 -9 1 -29 -7 0 15 -25 -59 -8 -71 -30 41 49 11 -87 36 38 -11 10 -43 -42 35 -33 -26 29 127 14 40 13 19 -2 35 34 -48 100 31 45 -17 -20 15 26 -49 -42 15 47 -14 37 -47 -62 18 3 -62 -41 69 42 9 -29 -41 -8 -53 -40 -4 35 35 90 32 18 72 -74 1 -15 1 17 26 -1 -16 -32 123 -22 15 15 -21 80 12 39 -15 2 85 43 -27 8 20 67 49 -9 19 24 -69 10 9 9 85 3 10 -2 38 23 15 -10 -31 -18 15 -9 -40 -25 -1 -36 89 -50 17 -9 -5 47 72 58 -95 11 -28 8 92 50 -8 61 -50 98 19 -43 -41 9 2 0 -2 6 76 57 14 23 33 86 -1 46 23 0 84 -8 10 -54 -64 47 -46 -39 62 -4 -21 -25 -35 99 -112 80 1 -18 0 16 23 29 -31 61 11 88 -1 37 7 -41 -24 41 30 30 59 -2 -14 -22 21 4 19 -45 -11 -52 25 -22 21 -19 -5 15 92 -28 -66 42 -14 -54 22 10 51 -26 -32 7 -1 36 9 -15 -4 -9 12 11 -25 41 7 18 30 3 27 -22 -4 -39 -40 0 -39 8 -37 3 -19 -4 -64 23 -17 9 -8 -21 -11 -46 3 44 0 -68 16 -33 -1 57 4 -47 43 43 -2 -17 -83 7 38 -20 38 51 22 -30 -29 22 6 22 37 59 -6 -38 -4 58 5 54 -1 -28 16 29 78 27 -32 32 29 63 15 -8 43 -57 15 -17 10 -50 40 9 -4 -22 -2 -26 -59 18 14 63 12 -56 -20 52 -95 -5 -30 27 9 -37 73 3 2 -33 -74 -16 47 -6 44 -10 -37 -48 -29 -12 38 -55 25 -18 3 67 8 6 -29 21 -9 27 -40 0 42 9 34 0 13 17 8 29 9 1 -71 -75 -21 -30 10 6 60 24 -53 1 -58 1 -15 23 -34 -32 -9 56 -84 12 -28 30 -37 -41 -44 45 -25 17 -51 -41 25 38 -10 -16 34 57 -74 -7 3 2 9 121 50 15 -46 57 -21 -12 -86 -21 -17 113 -74 18 -43 -12 -45 50 33 54 -25 -80 40 -37 -38 4 61 98 -73 53 2 28 48 27 25 -32 25 28 -8 24 -32 15 13 115 -43 45 63 67 34 -37 -48 36 -22 26 -75 5 -69 11 42 -94 15 42 25 14 -13 -22 -1 32 -27 49 -3 -1 8 2 -67 82 12 -5 -25 -73 -8 39 76 70 -2 -4 -21 -24 -6 -52 22 2 -2 -63 -13 3 0 -16 46 -16 13 0 -17 -11 -2 -33 10 7 -8 -42 15 -38 -40 9 15 -26 -30 -5 -8 2 28 -24 -11 -4 -2 -6 -19 80 29 37 49 1 39 23 35 1 36 0 19 -4 -2 38 -11 34 -52 10 2 -78 19 -21 7 -23 -17 20 -21 42 -51 22 5 -1 52 20 -13 1 -4 37 -12 -31 -12 58 -30 12 18 20 -59 5 67 17 -2 -62 -45 7 -4 -8 2 1 2 -9 -11 9 -19 3 -2 -8 -5 14 0 6 -19 6 17 -10 5 -1 10 0 7 17 -6 -6 5 -3 -6 6 18 -1 -2 3 -16 12 2 4 7 -5 7 8 -2 -19 4 0 -17 -6 12 -10 11 -9 5 -7 -15 7 0 1 -17 10 21 17 8 -13 -9 8 -15 -4 -8 0 -3 -16 -16 -8 19 2 4 10 -14 -5 -11 -9 6 -9 -9 1 -11 -15 2 14 -12 24 -5 13 21 -2 16 -1 29 -1 16 40 -10 9 -7 11 -18 -12 3 10 14 -6 -10 2 0 16 -8 0 6 21 2 -14 -8 2 9 -13 0 8 -9 1 37 -29 5 -33 4 -24 6 -14 2 -3 8 -9 15 -7 -4 13 16 19 4 -8 -16 14 13 2 13 18 10 -6 10 -3 -2 4 -1 3 8 14 -10 10 13 -7 2 3 39 9 11 -7 -32 -5 8 3 5 36 6 -1 27 -1 23 4 0 -2 -6 14 -10 8 4 13 7 -22 12 9 10 -2 20 -13 -4 13 -8 -3 5 -8 -14 -8 -4 3 1 -9 11 11 20 4 10 -16 -6 -7 -4 -6 2 -18 -7 -20 -4 -25 4 0 0 -1 -4 1 -14 15 5 0 -8 2 -12 -2 -16 -7 -9 7 15 2 6 -15 1 0 -11 9 1 16 -26 9 -2 10 -12 -8 0 2 1 10 9 13 6 -6 5 -13 -10 -13 11 5 13 13 13 7 15 -10 -19 -26 -24 -22 -24 -3 1 -8 -30 35 -4 -21 6 18 13 2 17 -9 -28 -40 -7 -12 16 -6 -8 0 -8 14 -27 6 -14 -12 19 1 3 7 20 -17 21 -14 12 -4 -7 -22 -27 -18 44 18 8 14 13 -34 1 -20 -6 -11 -15 -23 20 -15 4 1 -5 16 -11 -9 9 -21 -27 -28 27 4 -3 0 -23 6 6 6 3 -12 3 -10 11 -15 40 15 -11 4 37 -12 3 3 -17 -42 7 -24 13 6 2 -43 19 -14 -4 -15 16 24 -46 9 2 10 -12 -18 -51 6 -16 62 -4 21 4 21 25 18 55 -8 -8 7 -31 -1 55 -13 14 -7 3 -31 4 11 -15 -21 9 -20 44 -1 11 -3 2 12 13 38 28 40 63 25 16 28 23 -17 18 29 -41 21 -38 7 -6 35 8 -40 22 -10 -3 10 17 29 -30 -14 -50 35 11 -14 13 -4 -46 38 3 24 24 -21 40 11 12 39 -30 10 -10 0 -7 -31 0 10 27 9 11 -5 -37 -13 -7 -17 -32 17 26 -13 -2 15 5 3 -8 6 2 -17 6 25 -10 -13 -24 -8 30 41 10 -17 -19 -10 -6 10 2 -35 -13 -7 17 -8 -11 -19 4 3 12 -12 25 -6 3 23 5 -18 22 0 -1 23 1 11 -3 -3 -16 43 10 -25 6 6 22 -9 -10 3 -14 -6 -2 -13 5 21 -2 8 -3 -2 -3 -14 10 12 12 1 10 23 17 29 -17 2 -33 39 -5 -4 -11 -31 -28 18 1 -2 -16 27 5 36 -7 13 -2 -54 -10 2 26 -19 -18 -3 -31 34 -22 -26 12 -15 23 19 13 4 23 -5 13 -45 -7 -1 -20 -31 -35 -31 28 -12 33 0 11 -58 29 6 -19 8 -13 -36 10 -5 33 44 30 19 22 13 -2 -37 -16 47 -1 39 34 -20 -30 -15 1 -1 -6 -55 0 -20 -7 -2 31 -8 8 -50 1 -8 24 -2 -9 5 21 -3 -64 48 -48 -40 -12 12 -33 -11 12 38 37 -6 -21 24 -6 -74 -94 57 -12 12 -7 -18 0 32 -1 -12 64 26 -18 2 -17 -31 66 -9 -7 -24 -22 42 -44 32 -23 0 -13 -7 46 -51 14 -7 -17 7 16 -3 10 41 37 24 -5 -7 -18 -52 -39 10 29 -34 40 -31 -76 -50 -22 55 -8 -61 -4 26 -4 28 -20 -6 28 -22 -106 -25 -26 -32 -35 27 -10 0 38 -53 4 -4 -38 -3 0 -8 -30 9 2 34 18 -14 -11 0 20 -7 2 4 -16 -42 31 -3 67 3 22 38 24 -16 -7 13 22 -9 1 -1 5 -39 -39 -5 18 -27 18 -6 -28 -15 8 30 8 -9 -46 -12 10 -18 -14 -7 34 3 21 -20 20 5 13 18 31 -10 25 -23 -10 22 -12 1 16 29 21 9 -2 3 -26 -39 1 -5 16 14 -21 -6 4 15 5 -6 9 7 6 5 -7 18 -12 31 -5 -39 -11 41 23 -1 64 34 -10 -3 -7 37 -8 -8 -19 -5 18 8 3 49 -57 48 12 -16 -23 0 43 -35 32 -33 -18 21 -68 24 -5 28 -8 14 -15 34 -14 19 -45 -28 -29 -8 -2 29 -49 -29 -7 38 -22 -28 37 -27 -26 -43 62 -11 16 21 6 -5 -13 -14 21 26 23 42 23 -7 -13 -1 20 -34 -6 -7 28 -27 13 -27 -32 -4 -33 -6 -62 11 -8 25 -11 -3 -48 -31 -65 -13 20 -8 -4 -3 -12 58 9 48 19 91 1 -56 14 24 9 -3 -27 15 -6 -4 -53 -50 1 -13 -8 25 -29 9 -9 -1 42 2 77 -31 -40 -16 49 -6 17 -7 39 55 47 45 43 8 -13 23 -30 -25 -52 73 8 21 1 13 25 -45 17 61 -22 -84 -39 -18 -3 -35 1 -15 -66 2 11 46 -41 -60 -23 -42 114 -46 -6 54 0 8 -20 44 -13 8 87 36 -25 -72 -49 4 -9 -10 27 -20 39 6 -13 0 -46 -27 -24 51 -18 4 9 -32 -14 5 11 8 -1 44 26 -34 34 -30 -21 19 -5 32 6 -15 -24 25 4 4 10 -30 -9 -52 6 10 1 33 26 -13 18 -33 29 -3 2 25 -17 0 -31 -25 -25 9 12 36 -6 -11 -30 -4 11 -66 -18 10 -45 -46 -15 2 -9 30 14 -13 35 -51 4 -10 -36 -33 -12 21 30 -14 -26 -19 34 -14 39 -47 1 14 -1 24 19 26 -13 18 39 6 -34 5 22 13 73 -20 27 -74 10 -43 -4 9 -39 -21 7 50 25 16 -61 47 0 9 -7 13 -23 -31 18 -14 26 3 -36 -16 12 30 -27 33 -23 -37 -18 12 -40 -10 0 4 -4 -8 -2 4 4 20 -6 -24 18 21 -28 10 53 16 15 30 36 83 3 40 -8 -29 61 -15 -36 -15 5 -18 -34 -4 -24 0 23 -56 6 7 -13 30 -13 14 -19 13 -11 3 33 -33 -33 -31 -35 28 3 -25 -48 -9 -39 11 47 52 -17 -110 33 -52 24 -43 -15 -23 -66 27 29 -13 -3 -26 19 -88 58 44 -2 -11 29 39 32 66 59 33 -48 17 -3 -8 1 -16 11 1 9 16 101 26 37 -13 -30 -14 -11 -2 -15 15 15 -18 -52 -19 30 66 33 -126 25 28 24 -27 37 -35 -42 -33 -117 12 -41 5 25 -10 75 -40 14 -25 19 21 16 46 -42 -35 -49 66 -10 16 5 21 -10 -12 20 -51 -12 -26 16 -19 -29 -12 5 -32 -18 -44 -30 -36 -52 -36 -9 -28 -57 50 -14 -9 -19 -8 -43 18 -1 19 8 22 10 0 38 21 0 0 -4 -39 -11 -2 -8 21 10 15 -3 18 21 10 4 9 -42 15 -34 -4 0 -7 -18 -15 -28 15 -13 8 6 -102 -25 -1 13 1 -12 -33 39 4 -62 -29 40 -38 -12 9 -20 -31 -25 -12 27 10 12 -2 11 -10 40 -44 14 21 -10 19 4 5 -27 -2 -1 10 -23 -3 17 44 30 -17 15 47 56 -16 28 60 -22 3 -21 18 -38 -46 19 8 -25 -19 -23 -8 -17 77 -18 -1 -1 23 -18 -24 13 -53 -38 39 32 25 1 41 -20 29 51 21 17 -42 50 -12 -9 30 11 15 -11 25 -3 -17 -14 -8 17 20 -4 56 5 55 -12 -7 -34 28 9 -34 -7 -14 -7 34 -19 27 20 23 -27 -52 10 10 10 -18 2 2 -17 -12 31 8 35 45 34 13 29 34 -40 -13 3 -35 32 -1 33 1 16 -64 18 70 22 -14 108 70 -17 -11 -13 5 -51 -47 59 5 -17 -79 -3 64 0 19 55 -31 -31 -57 -14 -63 56 14 32 25 23 45 -47 -19 9 3 -37 -49 -15 -21 -73 26 14 18 -99 29 22 27 21 0 45 71 20 29 31 13 53 69 45 19 24 77 13 -7 19 -15 21 74 -4 23 18 -17 14 11 80 11 -13 36 -31 -15 20 -16 12 -34 66 57 -21 -24 0 -14 29 -27 18 44 -49 -20 -16 -44 6 -29 35 -10 29 27 50 17 -6 -27 2 49 -9 45 3 -34 3 -22 -7 17 -2 -17 -1 19 16 -40 19 -26 -4 28 -2 11 26 17 -22 -11 1 -15 11 12 4 -2 -32 13 47 -25 -2 -38 10 -15 38 75 24 -48 29 -8 10 -4 26 53 13 -49 -20 27 27 -22 -21 -2 36 22 6 -13 17 7 6 5 -2 35 19 -50 16 -39 15 -40 -21 -25 7 38 50 -117 -8 91 -9 59 93 11 -89 108 20 -7 -34 -54 -32 101 -84 57 37 -10 -60 88 -126 -6 -33 127 -61 -87 126 -80 -84 127 -107 85 -49 -21 22 -5 85 -85 60 -54 101 -120 -40 32 -77 14 -124 9 -25 -91 -118 -37 -24 72 -41 127 109 127 72 54 -36 71 126 38 -24 2 -12 -48 27 -22 1 66 -107 -73 54 -29 -58 -72 -5 31 9 126 4 102 -99 49 127 12 46 1 -72 -34 -11 -96 -68 8 98 -23 -35 -74 -91 -93 3 -128 -128 121 -8 116 56 -30 17 124 33 -76 -46 -95 42 -93 49 47 29 -34 -45 -3 -33 -125 47 -68 -4 44 -8 -94 -42 -4 7 -91 -66 78 -95 120 -32 -12 22 -100 10 8 -115 82 -38 127 -53 80 12 86 -28 -44 -73 89 -74 29 87 -117 -98 -44 -90 16 98 -120 -88 77 124 15 -121 -124 -99 -58 -123 68 -128 70 67 -32 23 31 -41 -128 -63 -114 -18 -64 30 -81 5 -72 -17 -64 -127 16 53 34 -122 -64 -51 45 -116 -66 19 -127 -123 124 53 68 0 -75 -35 10 0 18 67 -51 36 46 62 127 -6 58 127 20 -16 112 75 -39 3 -91 -30 59 -1 25 -32 20 -48 59 -12 17 55 127 54 -1 45 127 20 -126 -35 81 56 44 -32 59 -16 65 -3 37 -90 61 -42 74 68 33 70 32 -95 64 4 -95 -89 -56 72 54 103 4 -23 82 -60 -9 -33 -41 50 -44 -56 -100 -79 -17 -95 -36 74 -32 31 -62 -5 -17 -72 -12 -108 81 107 80 -34 -127 6 -36 -33 9 -68 30 116 10 30 125 103 35 16 -7 -127 -21 66 51 57 -70 125 -2 126 -20 -65 61 -12 45 50 -18 8 18 20 -96 -46 106 -39 -87 -47 127 -128 30 -4 122 1 34 99 119 -63 -53 -54 -127 11 -106 127 -41 8 11 11 57 -37 126 -54 122 -99 63 8 -90 -49 21 73 -69 33 -14 -103 -85 77 17 -69 33 -45 10 14 -39 99 123 19 -21 -98 -32 87 79 -34 127 93 -45 117 -114 -1 -7 8 112 36 -60 127 -12 -8 -27 -6 -23 -55 28 21 22 75 -116 38 -125 -100 -75 -108 -35 -127 33 95 -128 -57 88 -108 127 56 20 22 4 -89 -126 51 96 101 -128 0 96 37 127 116 -99 25 125 124 111 108 80 127 124 -89 -63 -76 -73 -16 13 -43 -87 0 127 40 -55 66 123 5 88 -34 -21 1 -11 -33 70 -53 3 -16 15 67 51 36 24 -21 25 -59 -96 126 34 -22 -48 -17 3 -42 -1 -15 -94 24 -109 28 24 -91 -127 -4 73 104 -33 90 10 -5 2 20 26 -36 64 38 55 -37 -24 -91 92 -100 -59 8 126 -5 10 -51 -82 -45 -69 -5 -28 -43 78 -105 -32 -5 -40 -116 -82 -104 61 18 99 120 74 49 -23 -30 -74 -60 -43 -87 24 -29 127 2 15 -76 -124 -118 -73 -37 18 86 -107 119 -72 -38 -83 -94 21 5 -12 27 57 43 26 -13 -97 -54 84 127 -51 36 -121 -128 -45 58 -89 -15 -12 122 -85 -64 -4 -127 51 -11 19 8 -112 -41 69 42 13 127 122 -37 -60 19 20 -42 10 19 44 -124 43 19 25 38 69 -34 -121 -16 -50 -72 124 -32 -38 26 -17 4 -37 -58 -15 -20 -120 -87 -23 43 79 -40 -35 -1 54 -9 76 -2 125 -25 117 -5 51 17 -65 -15 21 86 100 -22 -62 -35 105 3 -88 -23 127 -102 -114 -8 19 77 53 86 65 99 -78 72 -27 -104 -14 -18 127 -44 -60 50 81 1 34 95 -111 -68 -127 -46 55 93 -93 -6 53 -87 9 -67 125 -18 94 -126 95 89 24 9 108 -34 -127 36 -96 26 18 -81 -127 55 -56 -7 -95 18 -103 -107 -39 -62 -97 33 -83 -10 -127 -3 -18 85 22 -128 -96 -36 -81 37 125 -119 -124 -67 -15 -71 -100 -7 -84 -23 -78 125 -65 -27 -123 55 65 40 -10 20 35 -97 -37 10 125 -72 67 74 34 -5 -50 -109 0 75 -70 91 -29 44 80 -4 -6 42 0 -69 -52 -11 26 -28 101 74 -51 14 -29 126 -39 70 32 -4 24 92 -4 28 1 -45 74 -91 -15 36 -7 -85 51 5 -128 8 62 58 45 -43 19 103 -20 2 -45 78 -69 15 -4 42 127 116 -78 -2 -30 -128 25 -53 1 -116 51 -40 4 63 -71 72 38 -74 -66 29 -58 123 0 52 107 -24 -78 -8 -1 47 -97 -92 61 -23 43 120 31 81 -43 123 -19 -57 -13 -128 -34 -24 -107 -43 -44 88 -29 127 -91 -125 111 45 64 112 -128 -52 121 25 -117 -117 -124 -72 123 -48 -30 -97 31 -20 71 54 9 63 117 62 33 -105 -126 5 27 127 59 50 -52 -39 0 14 127 -68 -27 79 -67 -87 -88 -66 40 -90 -126 -73 50 127 79 -113 8 -127 52 -23 -114 -124 7 -9 -40 -13 72 127 -110 90 -125 63 -121 -12 -127 23 -128 -36 -122 -112 -16 -18 53 -105 -127 115 -121 26 14 2 -39 70 115 124 51 -92 -56 -16 40 -73 -19 39 41 56 -69 40 93 1 -60 51 -103 21 -117 -70 -117 -117 -96 65 -49 48 121 -100 -127 -22 8 -51 -127 -89 97 -128 38 120 -8 -13 44 40 0 -63 -55 -50 123 127 70 60 124 125 -4 -128 -103 1 127 5 64 112 13 -128 -112 -57 127 -35 10 59 -58 24 10 116 39 35 92 -93 19 -46 94 -16 127 123 -1 -47 66 65 59 -124 41 -40 25 -56 34 -14 105 -41 79 33 -17 -56 105 -53 89 5 6 55 -82 -35 -8 97 29 -53 -37 32 -19 97 39 -22 20 4 114 30 102 -71 -86 -34 -38 -43 -47 -15 63 119 -41 -40 24 -17 62 25 115 -38 37 -6 5 59 120 105 -8 -72 -109 -121 57 53 -84 5 106 17 -43 100 -125 37 -30 -62 -36 -87 -13 33 12 -17 55 4 35 76 -43 55 -74 30 20 -47 -125 65 36 127 -75 87 3 29 116 -120 0 -62 -126 -84 -17 -124 -109 100 -121 -20 -38 123 93 7 -122 16 77 -113 -101 -63 -79 47 120 -107 49 -77 -116 56 69 -127 5 34 -99 -74 127 25 -32 23 -125 41 -75 -127 11 -114 -20 44 -111 -111 11 124 -127 101 -128 68 -67 106 40 -122 -20 -11 -41 -48 28 -22 -73 -16 18 -32 -32 12 -85 -3 38 64 -38 -119 108 123 -69 121 57 38 -34 55 109 -128 -42 -104 68 95 -60 -57 127 -97 47 -3 -127 127 -103 91 -5 71 -41 127 60 -50 9 -6 -121 -27 7 60 -8 90 -22 -32 127 -53 -77 -114 2 -79 98 7 53 -32 -116 -42 -70 12 126 35 -39 -75 -103 86 31 118 -123 -29 -59 55 116 55 113 -53 28 -85 114 -124 -95 -42 -128 68 106 -44 93 -31 -125 -44 -106 -128 -84 -83 -127 109 -119 104 9 -70 64 -20 -10 37 102 -33 34 -25 39 63 -40 53 52 118 18 15 120 77 127 -127 110 83 22 62 127 -64 -55 -20 -75 -33 -23 -106 -95 64 115 -6 -27 90 -54 126 125 -85 37 7 72 -41 52 109 55 -38 116 -60 -60 -73 118 -3 -38 71 127 -6 -78 120 60 -49 109 -47 91 -17 -128 -14 51 4 124 33 126 18 69 23 12 24 120 -79 -106 -6 87 15 -35 -91 -56 90 -67 -13 -32 42 -31 47 -17 -125 -128 10 -18 53 -96 -46 -122 -50 -17 22 -57 -69 -60 0 94 8 -125 31 83 -75 50 -15 -42 32 -111 -127 30 -46 -127 -117 -70 60 126 126 -128 -9 -88 -52 72 -47 100 86 -6 -126 40 -38 -25 86 -37 -117 1 16 -125 62 21 124 -31 99 -19 53 19 -18 56 -100 -11 36 6 -24 -1 -89 -40 99 -128 113 -82 -124 -66 -37 15 -43 77 22 104 -29 -98 -34 80 25 -124 -124 19 4 127 -128 -125 -70 -127 123 -74 -128 -7 -16 58 -89 122 127 12 93 -98 104 123 -5 -127 -99 -85 127 127 -127 -75 15 117 43 16 -109 51 -49 -128 -113 23 -16 -97 -127 89 126 -70 118 -87 -109 14 -79 -36 87 -46 8 -79 5 26 119 121 28 -29 127 -37 49 97 127 17 -126 114 127 -77 28 2 -120 -55 84 71 -103 53 27 7 -81 72 -60 119 54 46 127 126 127 -38 -58 87 -34 106 -12 80 86 10 -93 -77 -82 -83 118 -59 42 -12 5 35 -91 -128 -88 45 -126 110 19 59 -101 127 36 -18 34 -20 -26 127 -46 -125 59 -18 -88 -42 18 125 -119 79 -121 -80 10 -99 36 74 5 44 -49 -108 -46 -61 4 12 -34 58 -77 38 8 59 -8 -12 87 86 -102 -38 -25 -2 14 -40 -17 68 55 75 37 127 19 -19 0 92 120 24 -106 50 -106 -11 -19 -49 127 -62 -94 -128 61 -104 -61 25 -71 -16 98 -57 98 121 -22 83 120 2 46 -123 125 -2 -12 76 -63 -41 125 87 103 127 14 -41 20 -91 -127 -102 -3 85 -127 19 -128 -29 -103 76 89 -125 25 -86 125 -79 -95 -84 79 -60 17 127 -127 -26 -128 -53 -122 -64 50 127 -11 -42 7 104 -9 62 -109 -122 127 59 -11 39 101 53 122 18 5 5 -1 -109 43 -128 43 -128 -114 127 -127 -26 -121 -84 -121 49 -105 0 -102 -127 -106 8 67 60 -128 127 118 -15 -39 -128 19 11 26 -68 -116 -121 -38 0 125 -101 15 -13 -65 -18 -67 127 -22 27 17 -120 11 127 -128 -49 101 58 43 11 -49 127 -55 127 44 70 -128 -126 34 15 89 -38 102 70 28 98 127 27 122 53 -12 -88 -24 -56 54 -34 -64 -50 -111 -39 -86 19 -100 -127 -90 127 -121 -1 29 -106 -126 42 46 -34 -89 -57 62 125 43 -7 -62 -122 3 7 51 -10 22 58 -127 -128 -105 52 -64 -87 127 -31 25 84 61 36 121 -7 42 -56 -86 82 -21 -126 91 47 65 -48 -21 -124 127 85 -71 -47 34 0 -101 9 73 124 87 13 32 32 -49 -107 -86 -26 28 -70 -101 -42 13 127 65 91 25 -16 -39 108 127 -58 30 -39 -11 1 51 -122 17 37 -127 -67 17 -35 127 -55 70 -27 66 -13 34 -94 10 -12 85 -38 5 127 -10 -124 34 -64 -54 -62 -40 -10 -33 83 9 -7 -97 -95 -33 49 -88 14 48 44 108 -66 3 5 119 24 -125 9 84 32 -51 127 82 -59 -69 -125 -122 99 -54 -22 -21 127 -62 -60 57 -47 36 -43 -122 -34 -13 -6 75 11 88 60 104 -70 -20 -19 -126 -57 -125 -104 -28 -41 -31 69 -66 71 -76 -15 -40 119 3 -8 -88 112 -33 49 -94 127 -112 59 107 1 127 -3 114 13 -68 126 126 -36 -112 -128 -127 87 -128 -74 -126 109 -53 18 -64 106 -10 6 -104 -81 108 -55 -98 -104 -30 95 125 -75 75 -93 126 -100 -114 86 -68 43 -29 -125 42 110 120 -53 127 127 6 -128 7 32 37 -124 122 -126 36 127 -73 121 -121 77 -14 39 97 127 16 -13 -14 117 -34 -43 -122 56 -77 -98 127 -13 -102 -96 123 -124 -49 10 42 -10 8 -11 -103 -90 -64 127 -77 32 -128 72 -89 -128 70 127 109 103 109 52 -86 110 -49 56 -127 -54 -27 -104 83 85 -50 127 108 76 -101 50 100 -126 -128 127 -66 -29 14 26 20 23 81 -18 55 -33 -26 -78 -43 -46 22 -33 23 -22 104 -127 33 -128 -60 82 126 98 -27 51 74 21 33 28 75 96 30 -124 -84 -33 38 -102 -120 36 49 -114 -38 22 -38 83 -104 127 -114 23 79 -8 -127 -24 -95 -3 13 -75 91 -128 43 -7 -29 5 16 -89 -101 -122 -9 127 24 -60 -37 31 125 127 11 -99 -35 -127 -55 -51 -126 -4 127 74 15 14 60 89 98 74 55 4 10 125 64 -127 123 -128 101 -128 -54 -45 -109 105 127 125 -43 -128 -128 110 75 -127 -106 -127 -52 107 74 -59 108 -1 58 -19 -128 11 3 -63 -12 -62 11 -26 123 -111 -128 16 5 124 55 -47 52 63 -56 125 -118 56 -127 -96 -124 -126 -126 -128 -17 -12 -125 -87 9 94 -127 15 127 31 40 126 -21 -83 -121 -13 123 -107 -113 -128 -97 -56 -119 18 -14 -17 -45 127 -127 66 40 -82 -107 46 126 28 14 94 -128 123 -23 -128 19 -36 43 121 -10 106 -72 -122 -108 -127 117 -50 53 -124 -128 -127 40 122 79 -107 127 123 -87 -126 8 24 32 -39 -124 -81 -37 55 75 -123 -68 -1 0 111 -64 -124 -122 -123 64 -11 127 105 72 87 126 125 86 127 -93 -91 121 -110 31 79 -58 -3 118 -67 -86 -126 -108 32 -120 -110 106 -118 -126 121 -9 127 102 -39 -88 -119 -115 19 126 127 127 -9 86 54 43 43 127 -122 96 57 -63 3 38 -74 -20 -112 33 25 -39 -12 5 80 -6 -64 88 95 57 70 122 127 61 41 91 122 125 14 3 30 -79 19 7 51 127 21 53 -12 -126 10 -81 -100 -33 10 51 55 -114 -90 -46 88 -16 14 43 -5 66 100 119 -122 -52 126 -47 62 -122 120 -101 42 23 71 113 96 -15 109 -77 -127 -37 63 -91 46 127 127 101 127 39 -71 -124 -121 -79 114 -40 65 -52 -128 -20 125 -23 52 47 32 -69 121 108 127 124 -14 -30 -3 45 -127 69 -94 -32 119 -127 -37 -28 33 48 -128 -114 -5 -49 -57 92 -113 26 -10 -48 7 -118 44 3 -72 -126 -128 -26 122 -122 -117 -128 62 12 -119 -2 55 13 21 -127 92 -1 -85 -99 112 -120 68 -128 -124 12 68 127 -126 -12 98 -97 71 -126 121 -8 95 126 124 118 -122 -75 -40 -42 -117 -9 -32 -55 124 -20 17 74 127 -67 16 -68 69 -101 -116 -19 -39 127 -24 -122 -66 53 -120 -119 -123 124 44 9 117 -121 -127 -77 -127 120 -84 -39 -101 -4 -128 -75 -72 123 30 126 28 113 55 19 46 -55 72 -61 -128 6 56 123 -127 -43 -30 -56 -86 76 95 85 -80 121 20 127 105 -106 11 16 121 90 -4 -24 -121 125 -19 -126 127 -32 118 -123 21 127 -85 -114 85 -36 81 -58 -114 -2 73 123 124 -103 -124 -65 127 5 127 89 127 45 -122 125 -90 127 64 -51 -122 100 124 111 -91 127 31 -75 -17 42 -1 99 -23 -125 2 -1 92 65 -43 102 -42 86 125 41 -87 120 112 126 118 97 24 -127 127 -37 -121 -51 -48 -120 50 -57 14 -128 -75 -83 4 4 52 15 78 -110 -23 2 17 -10 -77 -12 97 -88 -20 28 61 7 -52 127 127 -60 12 111 122 -52 -47 -21 40 -12 127 -7 5 -44 36 125 125 127 127 125 126 -65 -38 127 -54 124 -2 21 -95 -106 61 46 -74 29 127 12 103 127 70 -118 -74 10 126 -36 108 25 4 -109 96 -70 -124 -94 -126 -9 -43 -44 -34 104 36 -29 7 -125 -12 121 -5 -5 -8 -123 -57 17 -18 -81 0 91 -125 27 -58 114 -65 123 30 100 -111 -103 -124 61 54 -122 33 37 75 46 52 -90 101 -19 -74 122 127 -50 106 127 124 48 121 127 64 -27 18 -42 127 -68 -121 113 31 -15 -124 -55 -17 61 -115 -43 122 -125 53 -81 -2 94 2 -41 117 -128 -72 10 -24 102 -33 77 5 123 -128 76 122 -5 -72 126 17 20 -21 28 126 116 -2 58 -87 -91 127 -8 127 26 -23 -127 89 -3 -128 -57 27 -30 18 77 -19 120 -54 115 -124 -32 -128 -26 -121 31 28 -22 -17 -23 85 10 -89 -21 -59 83 127 127 54 -27 122 -97 -126 22 82 -9 57 -63 -95 -122 52 -31 13 -36 12 17 63 -31 114 35 -44 -19 123 -4 83 105 34 -124 102 -35 68 58 -128 105 -116 -40 21 16 64 102 97 -27 95 -107 -117 -43 65 -119 78 62 -93 63 10 -50 -34 49 104 47 -118 -63 -122 31 127 -79 -35 -56 32 17 11 -107 -64 -34 -75 -18 33 28 -74 -60 126 -57 20 -101 16 -1 72 -103 -59 6 88 47 -127 30 -86 26 93 -24 20 -27 52 4 -116 -47 -63 -8 -82 62 8 -49 -55 -39 93 119 40 -55 -122 81 -44 0 -88 124 92 -68 -65 -108 90 25 121 124 -35 -120 107 127 39 4 -118 -8 2 80 -5 100 -21 27 42 13 -48 -128 -106 83 127 93 37 19 -22 -123 -47 89 119 103 110 96 -67 -61 16 95 -89 43 96 119 -127 127 -128 -91 -121 127 77 -85 -69 -19 -128 82 62 -49 10 -114 -128 -41 115 13 127 -128 89 45 127 -17 -18 127 121 116 -113 15 -11 -28 38 3 -128 -97 -126 -112 92 -54 33 -11 -128 -110 -73 78 114 -13 54 127 8 -33 5 -126 126 -13 119 85 -13 102 -127 50 -96 34 -87 126 -35 87 -121 -27 -31 121 38 -78 127 15 53 119 -119 30 -9 -122 127 126 -101 -128 -10 -110 96 -59 -113 127 98 53 78 95 -116 9 -18 -128 -66 113 -39 6 110 -128 61 127 -124 -75 -87 126 -125 -119 -115 -127 -127 127 124 -128 23 -124 -99 116 47 -32 44 47 81 124 116 -42 12 -81 127 127 62 27 -127 -111 -57 -82 -57 127 98 9 -25 -117 -98 66 108 -15 -50 -41 33 109 18 127 104 -77 -32 -45 78 40 -85 -18 126 105 -12 -27 -126 118 -40 113 -81 127 -123 -128 -45 57 -125 -12 59 103 20 125 -93 -83 73 -39 -86 -71 126 -27 123 -10 -91 127 100 124 14 63 -30 -68 -51 0 124 11 -126 -3 68 -110 -72 -27 34 107 -127 49 -127 -60 -58 -12 127 13 37 19 127 -21 126 53 11 75 33 -128 -128 -78 51 102 -11 -23 -23 -85 -27 63 25 -20 1 -97 125 -99 -52 -128 44 51 -50 -73 -1 27 104 -8 19 -50 -8 -3 -40 -69 115 -43 -105 -24 22 2 69 27 30 23 27 -120 -124 -29 -113 80 -48 39 56 -116 -119 -85 62 -14 -89 127 -3 103 -33 -121 -107 120 47 -35 -4 10 49 -109 -83 -87 121 -116 4 -69 -66 -85 127 -128 43 61 43 -110 -110 -29 -127 -121 -11 -115 -80 -124 124 -68 73 127 -67 -101 -101 46 43 -58 -52 127 36 -24 84 123 103 35 -17 -87 -128 22 -20 78 -63 36 41 76 -65 22 121 43 9 5 65 32 -44 122 -73 112 -33 -101 -118 120 -126 -73 -21 -97 -2 127 30 -25 -71 -6 -33 54 34 -59 -39 -27 -60 -99 82 -66 86 -22 65 86 36 -20 100 -14 -106 127 56 -46 119 -83 -2 -6 79 61 -65 -33 17 37 -65 125 -70 79 3 -17 -118 126 83 -114 0 13 49 47 15 -75 88 56 -35 99 -88 122 116 -42 -25 20 40 -39 20 -22 45 -94 -60 -39 -28 53 -74 0 -85 -127 69 62 8 46 32 11 -63 27 -76 67 -32 125 -126 21 -19 -84 -14 -11 9 -45 -9 57 -12 17 53 -76 18 -33 44 33 127 -36 -58 54 27 60 -66 104 -9 -15 42 -124 -3 120 53 -29 45 33 -110 127 10 -1 -50 -42 -24 59 -128 104 -127 -36 -112 -52 14 5 115 11 -100 20 -63 -97 63 -40 22 121 12 124 -36 17 52 -89 41 127 -20 -20 21 -124 124 37 9 67 -126 -24 -126 94 -45 127 60 119 -64 -122 110 -107 -128 -96 -1 -122 -50 -107 126 -84 -92 -50 -122 101 -35 102 -112 -126 -78 -79 126 -25 -118 17 127 127 -26 103 17 -101 32 -75 -71 124 66 -35 -74 -41 -30 -101 55 -118 78 111 -127 -127 -128 1 127 107 -44 -62 61 61 122 107 37 8 -76 54 14 44 -122 -123 -58 -40 -20 22 76 47 126 -112 127 -41 117 -127 4 127 -83 -127 1 -126 38 -42 5 54 49 126 91 3 47 -90 -127 -3 7 -123 27 -52 -128 126 -68 127 -123 121 127 127 -110 -126 -16 -71 109 127 26 -76 -15 -123 -124 89 -53 -12 -127 -100 -20 -1 -71 27 40 123 63 -12 37 -127 105 47 34 127 106 127 -101 119 127 -39 117 35 124 79 -122 -34 -115 -61 28 -40 -116 -123 -128 -115 81 -125 -126 83 -11 99 127 12 127 116 -126 -14 12 95 118 123 -44 -120 -53 15 -87 7 -18 -87 67 -5 70 -45 -94 -8 -115 -84 125 -50 -1 -6 -77 11 89 -22 -128 123 -57 125 111 127 -96 8 14 -85 18 -127 -126 99 35 -86 69 78 -128 5 -44 115 -4 -110 127 65 84 -109 60 57 -101 -84 17 -128 -122 -20 127 -81 127 44 127 111 -2 -17 107 27 127 92 87 127 -29 -127 -123 102 98 107 127 127 124 -88 -14 -19 -72 125 -38 39 127 -6 -128 40 -18 -100 35 126 72 -80 111 -19 115 -127 2 34 45 78 -125 -128 -119 -67 117 -88 -128 -127 127 -83 -8 3 67 -127 -45 -123 -128 1 -16 73 -128 3 -54 -71 -23 127 -72 -91 113 107 -18 120 -96 127 -3 -26 82 -98 -71 -110 -2 -90 67 60 -1 -38 -128 53 -46 59 -47 -104 126 -127 -128 -128 -115 -80 -126 -86 -72 120 80 5 73 -12 -96 -51 -125 -7 32 -97 125 -30 99 43 115 112 118 30 -40 26 -69 -35 -20 -68 41 110 -27 -123 58 -59 1 16 -125 90 -66 -78 -9 8 15 -127 -64 -14 126 98 75 113 42 -69 -89 10 32 117 -62 122 -94 15 -128 72 5 117 -13 47 -82 90 87 127 -73 -33 67 15 -128 -19 120 -12 50 -17 -14 127 -124 26 -103 -38 97 -39 -58 -76 126 113 127 4 99 96 -101 121 -127 67 -25 -17 32 -96 55 -34 -127 90 17 97 8 64 125 -122 62 -22 -126 90 9 126 -25 -10 -59 -38 44 -1 127 -82 74 11 -83 26 -27 -46 2 83 12 -34 60 33 28 20 122 -79 60 76 -125 -26 33 124 106 -12 6 -78 -128 89 -120 -57 -97 -4 17 -40 125 123 9 -28 -71 89 114 -59 -41 -28 -60 0 -50 68 58 -85 -32 -127 22 8 18 -37 -40 87 127 -71 -113 115 -39 -123 127 127 -23 38 -88 -98 48 -61 127 -36 72 29 45 -11 122 -79 -2 -63 127 58 -123 108 101 88 -18 -111 53 127 97 125 -52 -34 116 -31 -77 -39 -88 -124 -19 124 54 127 -128 127 29 -124 34 -127 127 1 104 37 8 -77 -127 123 16 -9 -40 -54 37 6 97 -121 126 9 31 -1 33 -124 34 -33 78 11 111 74 -78 -127 -23 -38 -36 124 -128 42 59 -22 -23 -36 121 -128 -6 -128 72 -107 29 127 49 83 125 -100 -17 65 110 -126 127 71 -80 -35 7 60 -40 -48 -116 113 127 30 101 -30 -123 -50 -63 114 61 -127 120 40 99 -15 -127 -21 -71 -25 52 -73 -69 -84 126 -5 127 60 17 -64 -50 -127 127 -7 126 -95 16 82 33 -128 -122 -78 89 31 62 -125 -128 106 -95 -122 -34 56 105 -83 59 -101 -37 -59 122 -86 -127 30 -111 -76 58 11 121 -121 -36 68 123 27 123 -128 -128 -128 4 127 -105 -126 -4 19 24 29 25 24 115 -117 111 57 -62 126 127 -107 124 123 29 -111 -27 -126 127 -80 -30 127 118 -6 -54 127 -60 -72 49 107 67 -13 -36 26 -128 127 32 65 -72 25 -128 -77 17 29 122 -125 -127 105 -11 -116 122 -35 -127 -127 -95 -113 47 -30 -52 74 123 14 -56 27 -65 -126 13 -124 -127 -29 127 -116 33 7 75 -30 -78 -126 -122 54 55 111 -102 108 127 127 -49 -98 -128 26 -79 -127 -10 123 48 -119 -128 -59 -127 1 120 61 55 127 103 -90 -102 3 79 127 -125 -64 122 74 -127 29 121 49 -46 127 48 91 73 123 30 0 17 -127 -45 -66 -86 18 -40 -10 51 18 -6 -48 74 -8 43 -59 -15 -32 -31 -4 28 -76 -36 -65 20 34 -20 11 31 49 4 -53 -1 24 -13 -4 40 -14 -58 8 -47 -32 28 14 -8 -21 -50 20 55 22 -47 -13 -13 -19 -20 -41 -79 49 -41 30 -7 -7 -54 15 5 1 -45 78 -38 20 16 -12 -48 52 7 -65 -54 -11 -48 -33 -65 -10 -63 42 -58 14 -24 -51 -11 -79 54 28 0 -51 -24 -47 18 -9 93 85 9 126 127 117 16 39 35 -20 -1 28 127 -31 -35 -72 -37 -75 -85 54 -1 -21 0 42 -39 67 17 75 -69 -43 42 -102 -8 -115 -60 110 -127 -85 -48 -48 -126 -60 70 68 -38 92 -55 17 43 -66 -3 -50 -5 -101 -36 52 28 48 89 65 110 69 -1 -17 46 -9 27 40 -48 97 57 -127 -50 -8 127 9 35 -2 -66 -111 -31 115 69 101 15 -42 84 81 118 127 43 -107 6 37 -78 127 52 -65 -3 124 0 14 83 -76 -4 32 -54 -12 40 80 -25 -20 -24 -56 50 -126 54 -26 11 28 34 110 -65 9 -6 8 -25 -51 60 -75 26 -21 90 3 -103 -69 -4 11 48 -34 98 -10 78 51 -15 -118 127 -26 -1 -120 -83 -49 -9 1 -40 12 -49 -127 -3 -4 -4 -18 -40 -7 74 35 -56 -127 -38 58 -66 -10 92 36 13 52 53 11 -22 -56 -2 -76 43 -56 25 73 68 74 84 -61 6 66 -17 107 123 24 15 13 91 -9 -20 125 116 -50 -19 18 54 -41 -1 65 81 -54 -80 3 -62 15 3 38 -112 -41 -42 -124 -12 50 1 -20 -55 124 18 -22 -44 104 -33 -28 34 1 -121 -56 -67 45 -71 -72 5 51 -10 -88 -128 -9 -11 6 68 87 38 48 33 -7 -7 59 -27 -23 26 -16 -78 -29 51 41 -36 -55 -52 68 -12 -47 -107 -16 27 49 -3 -63 -85 122 -49 50 -73 -56 -23 -26 97 -56 -126 -41 44 117 -109 -30 107 -120 -35 -10 -15 31 -108 -128 25 -67 12 -26 44 10 -4 122 34 127 -15 -127 -74 -66 8 55 -77 -24 29 103 2 127 127 19 -80 -14 -25 125 9 -32 -86 89 11 44 38 -36 118 127 23 126 113 96 -13 127 9 -87 42 -127 110 -76 -23 48 -67 32 18 23 42 110 24 -84 -5 58 23 8 -78 41 -114 -116 12 73 28 65 -100 90 -78 52 62 -127 81 -85 -89 -120 -73 -76 -82 41 18 -70 -51 117 -22 6 14 -34 -14 -108 -17 17 -71 -30 11 -101 127 -113 -35 23 42 8 -47 -112 26 125 25 -39 50 -110 -49 -47 -127 27 39 0 -10 114 39 -64 94 6 -67 92 -34 127 -74 -115 67 -10 -127 6 30 25 -83 41 36 127 93 -14 -32 127 23 -28 -77 -2 -49 -95 15 -60 -126 -76 -15 -45 49 66 75 -64 -4 74 -13 -120 59 61 2 -29 36 83 4 -42 -68 127 -7 60 -16 37 -80 44 64 9 35 -102 27 20 127 83 108 31 45 -19 10 -98 8 -20 44 4 -47 10 85 26 48 20 -8 -67 -56 -127 93 51 106 63 0 -28 50 -89 -21 8 15 51 -7 123 -78 -27 127 -11 40 127 -64 80 7 42 110 -6 53 -78 -9 28 21 31 -86 40 21 59 -21 5 4 59 45 -10 -6 30 -37 -52 -122 -25 86 -73 104 -42 -128 17 24 59 -82 -55 -101 -115 127 -118 54 48 -93 -42 -51 64 45 126 -109 -10 121 -28 -128 -127 127 97 96 -100 -105 17 -68 -103 -61 127 -122 124 -37 -53 -68 125 5 -1 6 -116 4 82 -29 -46 12 70 64 127 -110 -108 60 31 48 15 -59 -4 108 73 -70 -78 -81 -114 -54 -119 -46 -5 -92 127 29 23 -96 -55 124 -55 -70 110 54 127 19 -101 -125 75 -60 16 -83 -126 -126 91 127 77 -127 -5 -69 64 21 -120 -60 -99 106 -122 -118 -81 126 -21 -37 17 12 -10 -111 -128 20 -16 5 52 -34 -128 25 37 30 87 70 -120 32 30 11 41 2 -79 63 -87 -35 34 28 -71 12 -124 -76 28 -114 4 -83 -51 18 79 114 -4 8 79 -38 110 21 13 -122 -55 49 56 -25 105 -80 30 43 -69 15 4 17 63 65 -48 122 85 -106 -78 -73 29 24 -121 21 46 10 -102 -33 53 45 -46 -108 -51 14 -57 18 -35 -72 3 -111 89 -120 -33 126 -122 -25 -118 -82 -16 27 67 -124 14 -69 -52 -40 -67 -13 -4 26 6 13 -108 22 -90 29 -120 -42 81 18 29 86 40 -85 64 33 -72 -71 40 -11 -127 -72 5 -37 -122 39 34 -32 -55 -37 -44 63 101 81 -119 -125 -92 -35 121 15 -115 -101 -23 -46 -25 -29 -102 -27 -34 49 12 105 -52 -51 44 -32 9 -32 -32 -71 -74 -10 127 50 -34 -126 -123 -126 -89 8 -33 -8 -5 118 67 -60 -66 78 127 55 108 122 33 -128 57 118 127 -2 -37 116 11 127 -123 -1 113 105 80 -49 -66 -57 -128 -77 126 61 116 -38 -48 -43 127 63 -100 -19 -37 122 -94 15 -127 28 -44 28 117 -16 -128 -98 -40 -69 48 61 89 41 127 78 -125 -128 -127 32 118 -127 -82 -82 -72 30 89 -58 9 -128 14 -128 121 -75 -66 -24 -77 -62 -73 -41 -82 19 127 126 54 -119 -28 -10 -127 -100 -80 -102 15 -88 21 -38 -79 -15 -80 32 127 5 -79 -47 105 -54 -94 40 -5 127 53 67 46 19 125 27 -14 51 -30 95 -127 -105 -114 -113 -37 87 -65 -128 127 -29 -38 -36 -94 74 25 -58 114 123 20 -22 70 -58 78 123 4 64 16 -73 67 -28 -46 -80 127 -128 -46 -82 -96 -127 6 -33 25 -7 -43 -66 -14 -30 1 -100 94 96 90 52 127 -13 -22 53 89 10 -109 -54 -115 -17 -83 119 -27 48 -62 -109 16 -33 12 -70 89 -95 -42 98 40 -127 5 103 5 -5 -68 1 51 102 106 125 -35 -126 46 -100 16 96 -72 -30 -128 103 70 83 69 72 55 -80 -119 92 -127 -124 -53 -45 15 49 62 4 -17 -6 95 -41 -99 -114 -70 -127 66 4 127 80 -127 83 0 -6 106 117 104 127 22 -105 86 -127 58 -16 10 -8 -8 -2 101 34 29 -5 -44 -48 63 76 11 -98 -64 2 85 -88 -74 24 -5 -104 56 115 -18 -96 -123 -74 -70 122 76 67 -127 -128 38 -121 -6 -127 -77 13 -123 -78 127 126 96 120 70 -107 -6 84 17 -71 0 127 -42 53 125 -20 21 79 -85 -125 -121 -100 101 4 -121 46 121 -28 120 -2 -3 100 39 52 -122 -127 39 -45 72 -92 40 126 54 -128 -29 125 -78 -126 -15 -128 -110 -127 -128 124 -57 -21 -128 68 26 -78 -127 55 58 2 114 127 56 -84 -54 127 -100 127 35 2 -24 -35 36 -27 -51 -65 -96 -126 -125 -27 29 108 -53 -126 68 -67 -18 -106 19 66 5 93 -11 -24 -39 72 -34 30 14 77 -63 -120 -122 -30 -6 -25 17 95 8 116 -36 -86 12 -71 -62 52 -53 -39 16 -3 -26 17 48 91 -6 -11 50 47 -126 -47 95 31 -72 64 -85 -127 -28 12 50 60 -32 -128 -15 5 -5 -63 -13 -81 28 -48 -54 -127 -85 127 -70 -13 41 77 -15 11 77 -44 127 81 -55 -41 -25 -80 33 -128 -22 -10 70 -112 35 -77 91 -77 57 124 127 -89 -63 -126 -1 11 -8 98 -22 -15 68 51 28 -20 3 -20 -85 42 -65 124 35 23 56 -12 41 52 -21 127 113 -95 35 -119 -53 3 -67 -24 124 -47 -125 -5 125 67 8 -2 40 34 108 -8 -127 79 112 19 29 11 -65 127 -36 -87 -20 57 -98 56 1 -74 0 -125 31 41 -49 -46 -23 73 -23 -54 40 7 -128 -10 88 39 -38 104 -23 44 52 124 51 11 -121 18 9 -66 82 -78 107 123 -1 5 -23 127 -59 -18 127 21 -42 -29 -70 -25 -126 -25 94 80 24 -84 -126 96 -22 114 110 68 -118 -113 -101 -123 7 126 127 124 41 29 -128 5 43 -29 75 4 15 -128 37 -19 -2 62 -118 119 9 -40 -82 -58 23 -104 127 125 -122 -127 79 -80 127 43 -63 127 -72 55 29 -11 -104 85 127 61 -19 -114 42 18 59 -39 13 111 -72 72 47 -102 88 42 127 127 -47 107 -117 95 79 -73 25 127 -5 15 47 -125 34 -42 -73 -60 -71 -65 127 10 33 -59 21 44 -31 100 -128 -123 124 6 -25 127 30 -47 41 -122 -112 43 -5 127 95 15 127 29 37 48 -72 15 29 -28 -16 -7 50 -5 63 -62 83 -82 56 -29 -5 -92 -55 127 -104 -79 -4 7 -48 -112 -18 0 -88 -86 -59 -118 12 -18 33 -4 110 43 65 60 94 10 -81 -68 -81 -8 -65 -63 -38 -126 40 -48 -39 -126 28 26 6 -11 -72 -99 -16 -14 29 39 8 3 48 -19 -9 -109 -73 -24 -48 -43 -24 122 44 -94 -4 31 9 -73 29 -38 -54 34 52 -3 13 -61 -32 24 -36 -61 48 -20 -2 60 -6 -48 -22 -24 -34 4 49 -1 44 -55 -35 -7 -4 -37 -117 56 -31 -15 29 -95 75 0 -13 -1 -48 -35 -18 -9 -4 -6 37 -36 -18 -50 -73 -22 -28 16 12 -11 16 27 50 -40 -64 -74 -51 35 -16 -25 -25 -6 -45 60 -9 -12 9 67 5 44 121 57 -28 34 57 20 -29 34 -51 -19 -7 11 -34 99 -7 1 16 -15 -6 57 44 40 -81 38 43 -38 -84 24 -75 -16 6 -11 95 -107 118 -77 83 -16 -16 -10 40 13 108 -32 -25 -4 -39 -8 19 0 -25 -37 -13 31 58 -93 59 74 -16 30 -52 7 17 28 51 -19 24 31 -17 66 60 74 65 -21 58 86 -59 26 7 48 58 70 -40 86 105 125 25 40 -31 39 123 -21 74 46 -49 31 26 45 -15 80 -27 -21 42 55 -5 38 29 -17 -17 -12 -61 114 -28 1 -54 18 -11 46 38 -1 -6 -30 -12 -4 -98 -15 -66 4 -78 -27 -11 28 -60 5 0 108 -19 27 -49 30 -4 -42 43 -39 36 5 -87 -52 -6 6 -7 52 -35 -26 -126 -17 4 2 70 -72 52 -43 -4 79 -61 -32 -17 -58 -2 -11 34 7 -64 35 27 127 -125 32 76 58 -29 -23 -9 9 21 19 6 21 -6 115 -19 32 -85 6 70 9 -3 87 -54 38 3 -112 -43 -42 -47 127 86 -7 50 10 93 -54 -72 39 -2 30 -11 -33 8 -16 -73 -74 -67 -7 -7 -34 24 -6 -2 71 52 60 22 -104 -32 16 61 -56 -16 6 33 38 -61 -127 113 -9 33 -25 -56 -113 -12 -63 -8 49 1 -25 39 5 -64 5 -69 -19 101 36 -42 54 15 -26 2 30 -42 71 18 62 16 -86 6 2 84 81 7 -18 95 84 46 -78 -2 27 46 -25 -11 17 -53 -80 15 -36 13 60 -22 -17 6 -38 52 97 -74 -66 33 125 117 -103 -74 -22 67 31 -109 14 -55 -73 22 25 74 42 7 127 -18 35 64 1 -1 4 -19 66 20 -72 69 -43 -69 2 -40 -109 4 15 3 -48 39 15 57 49 92 -67 -124 -7 18 72 -96 1 115 125 -9 -7 51 -2 -24 27 -26 -44 -126 21 127 15 48 -18 103 -74 -11 -29 -88 -3 44 5 -15 -74 -50 -67 -33 1 11 -95 126 -44 -49 109 18 34 -90 -3 10 52 -31 -79 67 7 -45 28 -21 31 5 -127 -85 -3 81 -120 -86 -52 -102 11 -32 82 1 23 78 9 68 -55 17 72 -7 3 -21 -30 42 85 -18 9 -43 -80 -45 42 -4 21 42 112 127 97 -60 -18 49 41 18 69 -128 71 0 -38 -82 -57 -92 12 -2 25 40 102 -24 25 8 26 49 29 -57 -29 3 -34 35 -53 -55 40 78 -53 78 63 -56 115 2 1 109 45 15 -71 15 42 0 68 13 107 63 24 -34 109 -60 -8 24 -71 -21 39 2 -37 -56 1 -58 74 -42 -17 -5 21 20 68 17 114 7 -85 54 -43 23 47 109 12 -12 94 17 50 122 0 24 74 -127 69 43 -50 -30 0 -41 -62 -37 32 41 -25 -46 -12 4 -77 57 124 -29 -12 41 10 -42 53 -49 -23 38 125 8 -86 -19 -24 47 107 -37 -80 29 123 9 24 53 2 -116 47 25 -91 108 -117 43 35 -76 -106 -118 83 -83 127 -38 -119 -52 56 -30 -120 87 46 -56 -13 -57 -3 117 -76 126 -14 2 -63 65 6 -104 52 -118 31 67 20 -63 -76 65 14 29 -45 60 65 103 7 86 -24 -55 -35 51 4 -24 -122 -1 -118 30 60 13 10 46 101 4 40 58 -60 52 -56 -38 35 51 -113 -42 15 92 57 -126 -32 39 -101 91 28 -118 -124 -81 -117 -119 65 -55 67 -3 -3 23 -90 15 -78 -28 -6 127 126 -24 2 -3 -5 15 8 54 -37 67 -83 18 33 47 106 -4 120 6 -42 57 2 -115 -28 -37 4 -53 29 11 -61 67 3 7 -93 24 14 -19 24 42 68 67 -23 -71 55 31 36 41 -77 -53 -11 -60 -15 -33 -14 34 6 -76 -33 14 -12 -2 68 52 32 -114 37 35 -17 -78 -4 -53 25 -45 7 11 21 -43 -40 -64 15 -11 -128 12 54 1 101 -110 -26 -21 -55 84 53 -52 -7 9 -24 -45 -108 -74 -10 61 25 -94 88 -26 10 59 10 -128 -98 4 -122 -30 -68 123 -30 -106 76 -122 14 40 -56 20 -23 22 -13 -50 -78 -60 100 34 91 54 -16 125 26 28 -21 -121 41 100 -60 -41 29 10 31 -9 -9 38 34 96 36 -33 26 -122 -52 -51 -125 -66 49 -125 -51 -55 -12 30 21 -13 10 -36 30 83 -58 -21 33 7 -42 121 -23 -90 31 108 -87 127 -17 -32 -66 -57 2 7 101 3 81 60 -121 -38 -2 125 -14 10 -38 21 -17 -27 -120 -21 127 86 -71 58 -13 22 -75 -48 17 77 -9 -4 -111 60 -23 111 -113 -87 13 -123 -102 -84 -40 40 56 22 -51 89 -59 -108 -120 -41 -127 24 -118 -122 -62 -2 -112 41 -41 -52 -127 -51 3 29 -43 16 -59 61 61 -64 23 -125 -70 58 41 35 -47 -20 3 -119 -33 7 -18 -41 -44 -73 35 68 -127 -128 -31 97 15 -62 -28 3 18 9 71 33 77 46 57 -1 52 -45 13 3 -60 21 -2 19 -49 -79 -105 -9 29 43 77 37 127 15 1 -86 126 -22 -38 -83 39 10 -28 122 -57 21 -28 39 -79 52 -16 74 -28 -69 30 9 -20 12 -4 -30 -51 32 -57 -20 63 -37 -63 -30 45 -60 -121 31 117 -49 -28 17 8 2 0 28 22 -38 -23 10 64 -49 -26 22 -25 126 10 -78 -9 35 -97 4 38 -63 7 55 16 -101 125 -27 -20 21 7 16 57 76 -17 -52 59 25 -54 -16 73 105 -73 21 19 -78 57 -41 -54 127 -76 -43 -88 7 27 -54 34 -64 69 -106 55 -64 -12 127 23 20 24 -9 36 32 36 100 -35 -104 -70 -36 50 -35 30 -1 -18 15 -32 24 7 -16 96 98 67 -7 27 -51 24 42 -45 -12 -39 -43 -60 29 -80 22 -61 88 -14 21 126 -57 -127 8 0 52 -91 -63 94 -61 6 -36 59 -116 9 -53 13 5 -29 37 21 -18 -81 57 80 23 -40 30 14 -111 67 -17 -71 -37 122 -40 -98 103 48 -8 39 45 -33 46 -67 -57 0 -1 -70 -27 21 66 98 22 91 -53 -45 -41 -18 49 -16 91 -127 76 49 85 -38 -10 -58 -74 -12 -19 15 -19 -51 -80 101 110 -27 -100 -12 -34 -14 -93 -9 4 79 13 -6 -2 120 -51 -25 -56 46 -25 1 -19 -125 58 -7 35 32 -29 14 52 -91 21 116 -12 -59 41 -32 -14 -120 -57 26 85 5 127 19 -20 22 -22 24 -7 99 -4 -74 -22 -60 -91 63 -127 112 -20 118 -61 62 -20 23 -111 118 -34 68 -7 34 -9 -74 23 62 43 51 30 8 -47 127 90 16 -77 -124 60 -63 7 0 32 -17 41 -38 -85 -2 55 78 13 91 -56 10 39 -59 -27 -7 -68 -12 -42 -29 19 -46 8 0 -67 36 -10 58 -32 1 -63 9 25 -51 10 -128 7 -15 10 20 2 11 127 64 23 45 -71 -1 -3 -37 33 64 18 -5 91 12 78 22 52 -54 46 118 28 -17 22 -6 -1 -13 -14 -79 39 -73 -64 -78 13 49 -110 -19 81 -4 -114 -30 -106 -77 -128 -42 -68 -84 67 83 -112 38 18 -76 -13 -65 26 -46 41 -34 117 -84 -25 69 -35 -80 15 6 -111 74 -116 -44 54 15 -55 -16 7 -112 -48 6 60 -4 -47 13 -9 -16 -35 52 -79 -26 -45 -10 -23 -109 51 93 -13 -13 46 -21 -37 65 -72 -71 120 -57 71 -18 -69 -31 -61 -12 13 -12 -55 -37 79 -5 18 30 70 -36 33 -9 -72 56 90 73 -52 -35 -125 -66 -84 -24 -7 -61 -55 45 -41 -104 -24 -25 58 24 -119 127 79 -88 -79 -66 40 23 -90 93 71 3 64 -43 35 -62 -58 -35 126 14 -50 -82 -41 -31 -11 -125 70 -5 56 14 125 -22 -42 89 -88 -33 -49 94 -22 3 23 72 -86 32 -88 -10 -36 82 37 61 31 -92 -13 -14 -8 -8 -126 22 127 -43 -10 -4 -69 7 16 -69 93 -128 77 19 63 19 119 6 -31 67 35 -8 -18 15 -73 93 57 -13 124 3 33 3 6 -24 -87 -9 -8 -77 17 36 26 -14 -11 20 10 -43 14 75 -28 10 -119 -61 7 -22 -63 -115 7 84 -40 -70 -118 -105 -39 -34 74 18 103 13 24 23 2 12 73 -14 -64 -10 -35 -122 -112 -32 -10 -18 -121 -116 1 -16 -85 9 -103 -45 -96 101 -39 48 -71 22 -81 -46 -58 -56 0 -65 83 -46 90 58 -128 48 -127 -20 -126 -64 -120 -110 89 53 -128 -125 -3 -13 -128 -75 80 4 -96 25 -61 66 -1 -128 26 -37 127 120 0 -17 -128 -26 40 30 -46 42 93 -71 17 127 -126 68 -16 -34 36 -125 -29 111 -60 9 -55 118 -69 108 -46 17 85 125 32 -58 31 -122 29 17 71 -61 -51 24 -60 -63 -6 9 80 73 -127 -45 80 126 -127 -12 -17 125 -123 80 -93 47 94 82 33 -79 -91 -99 -55 -54 -126 -67 -113 27 -44 11 13 -14 125 6 -106 52 113 1 54 126 36 120 0 32 36 13 24 -126 -122 -27 45 -65 -86 -91 -117 13 -94 -60 -110 35 -34 55 65 27 127 -1 -68 -9 -128 -122 76 30 -108 2 -102 -82 59 -123 -19 10 -56 10 -10 -5 -31 47 40 79 127 3 46 2 25 4 34 -128 24 -89 -43 -1 37 -74 46 80 -1 -4 -42 100 109 10 122 -51 3 -58 74 -127 61 75 -37 -77 -19 -78 19 21 27 127 127 -52 -89 -77 -127 8 -125 -116 114 -112 94 -115 59 -18 18 27 -68 -11 105 125 -52 -93 -128 -44 -57 15 127 -8 43 16 -97 46 22 3 -29 31 4 -115 -17 -76 -53 -71 -24 -21 -108 18 -103 -18 127 98 115 68 34 50 -68 7 61 -126 -53 56 19 -75 75 -91 -83 55 -56 53 67 75 14 -14 64 -96 -126 125 60 125 81 57 -9 4 49 27 2 -126 2 -125 71 -11 119 -17 81 64 111 -64 -126 -59 -126 -120 1 -1 14 -56 69 24 -126 -100 55 127 127 -17 -81 -55 -116 68 -65 -54 127 76 58 0 -128 45 96 107 75 -3 77 39 -97 92 -127 -21 -113 -5 43 -97 8 -20 -74 -59 -19 -77 -67 83 -24 96 6 122 124 -56 68 -128 29 -3 68 -51 41 -43 -126 -9 109 55 -64 -33 -128 -87 -101 125 -11 -90 -88 122 -99 -112 -87 28 35 -19 43 103 -55 -15 115 6 -49 10 -25 14 -128 -7 24 -64 23 -52 -120 -21 -75 51 85 126 125 -61 -31 24 13 89 -33 31 -124 -48 38 -119 -12 37 -28 23 -126 60 -6 107 -59 -45 126 -70 -58 -124 -88 -122 -12 -64 -97 -58 -24 -64 -77 -54 90 -22 -107 -7 -124 3 52 111 -26 59 -7 114 56 -108 15 34 -116 18 -99 -128 -58 -43 -73 55 76 -117 -127 16 -81 55 114 16 25 -48 78 17 29 -63 -127 -128 8 30 -14 -13 -18 -50 -60 -1 -111 99 74 -42 -126 40 -67 82 -19 -122 -64 -19 127 -127 58 48 61 36 -32 -24 121 -9 -12 -73 -127 -17 -5 24 127 -62 37 82 24 65 10 -47 -45 -37 -36 -52 68 49 79 -66 11 -59 -88 20 96 -39 20 -15 110 -48 -10 -47 36 -62 -60 -97 35 103 2 -42 21 -16 -45 -42 28 44 29 20 -126 76 125 -104 52 64 71 -47 121 74 34 19 -73 127 -42 -126 -43 124 123 -8 11 -60 116 126 -125 -38 44 44 -126 -33 21 107 127 116 44 99 -83 -123 67 127 127 55 6 -39 -8 127 -76 96 124 54 -53 -1 -10 113 -69 45 95 -47 -59 108 73 -102 127 16 -128 84 50 106 121 114 -26 -4 5 -89 120 -21 66 -38 -20 -125 127 -127 120 -128 -6 27 25 65 123 -40 2 81 62 15 -113 10 -127 -105 -52 53 85 124 -13 -15 107 33 -80 124 -4 -21 0 82 60 72 119 94 127 41 -122 21 -127 -48 4 124 -87 -10 68 -89 -90 37 -9 -66 16 -127 62 74 -25 115 2 -5 -68 121 120 -120 110 114 53 -49 -124 56 126 -89 -35 -10 127 -122 -60 -8 -64 -17 68 118 -57 -70 -33 -66 114 76 -3 9 -47 -21 50 -43 34 24 53 59 -119 -48 -111 -127 74 -125 -89 -110 -128 -119 -12 -13 -91 -127 70 41 -121 -5 101 -48 127 -60 -90 24 -113 91 -127 82 111 -90 -15 -127 -44 8 -8 29 -71 -62 87 -30 -53 -18 -128 -16 77 125 82 93 30 -39 127 -127 -14 -33 127 -38 -18 -121 62 -128 115 68 -15 91 127 5 124 15 22 -76 -71 -3 0 -26 -7 34 -59 42 126 -38 -8 127 17 -70 39 -67 108 -40 -127 -1 -127 -54 -44 2 -33 -82 -101 -8 68 70 14 -17 -127 36 73 -64 -91 -66 -67 -32 -126 72 -119 126 116 -5 -65 -13 102 123 -9 -43 -36 -73 -47 127 94 127 -15 27 -71 36 2 125 -89 -20 -61 -65 -44 48 -64 37 -79 67 124 -1 -117 -37 2 124 -21 115 24 -58 101 -39 70 96 123 58 8 41 95 68 -123 27 -127 -14 -30 26 119 -125 123 118 -29 -16 3 -39 -45 127 48 -33 35 56 20 28 121 -36 110 -15 -71 8 104 26 5 -78 111 60 27 70 -85 -42 64 -30 126 70 -12 31 116 -69 -128 120 25 -59 37 126 -16 -126 -7 103 3 -128 -28 -125 27 -7 -121 -30 -62 26 -75 -94 59 15 80 68 94 -26 65 -55 1 0 -36 77 88 127 11 16 28 7 27 43 -13 -31 28 126 -22 36 -128 -95 48 23 -124 -9 -87 85 73 125 51 -7 81 -4 5 59 -46 -9 125 -41 -35 126 74 11 97 25 -94 -114 -27 -16 -46 -26 32 -126 127 100 59 -59 -126 10 21 -39 18 -96 -110 93 127 -45 77 -17 -77 -65 -24 17 -37 -45 -43 23 51 43 -5 -125 -127 1 -35 23 -37 -76 52 -3 -14 -8 -63 -84 -30 -127 -26 -51 72 6 127 -12 -73 92 77 49 -23 -118 -22 127 106 79 7 55 -78 -2 -125 -29 19 30 -122 -46 5 25 -15 6 70 38 66 -97 -39 -69 -124 -87 -19 56 -1 -126 -4 -35 11 59 16 66 -27 -36 119 -44 41 64 1 -38 14 -25 -112 83 -127 -7 61 -39 45 94 -2 126 -57 88 3 -51 32 -7 -18 -3 76 -37 -32 124 -83 26 -40 33 -20 86 118 97 -127 33 -106 -34 -10 116 7 61 -21 124 24 42 -114 25 -17 75 41 -3 -5 119 70 -115 126 -9 19 -7 -80 127 43 32 -12 73 -30 15 18 -8 -55 15 -64 -20 -30 -125 -62 -126 110 0 -48 -92 10 35 -45 72 99 49 44 -34 89 45 -38 5 -56 -34 -82 -77 -84 -33 -51 8 16 22 -49 -27 80 0 -10 -3 -100 -32 56 -34 9 69 22 -29 10 -41 -127 6 108 -67 48 -13 -42 -69 30 45 -62 56 -18 -92 118 125 12 -117 2 30 -67 3 40 -21 52 4 35 -51 94 42 32 -99 -74 -22 -40 127 68 123 -128 -44 88 -70 14 -126 67 78 106 2 70 -126 90 -82 -113 -32 -13 -22 113 -32 26 -69 -18 -46 14 61 -35 41 86 -46 -14 -40 69 -9 125 -32 -66 28 -97 27 1 -13 81 -87 -84 -20 95 -87 30 -4 -126 -50 13 3 2 -12 -4 0 -111 64 34 82 9 -47 24 -12 49 -117 76 -39 90 9 -19 108 72 -125 42 22 -45 98 127 7 56 -109 48 39 7 21 -67 71 52 -1 8 4 124 -103 -128 -24 41 105 -38 14 -10 0 42 -19 -30 97 16 -109 53 -128 127 57 -91 59 16 -63 54 -19 -30 3 -80 65 11 29 51 26 39 42 11 24 104 -1 -128 58 -70 11 70 -6 43 51 -55 22 31 -40 19 -115 -49 -6 -128 -123 -117 3 56 49 17 48 -87 -17 -62 -23 127 77 -63 105 38 44 -29 34 -18 36 34 124 -61 -76 -5 -7 -128 -35 -15 -45 56 -75 -40 48 58 -3 115 -126 21 126 75 6 -46 -50 -14 -48 52 -13 40 75 -18 87 10 37 8 86 -57 -68 13 14 51 -101 -107 -79 11 57 24 -9 -22 -18 -68 -4 -119 39 35 -11 -67 -103 54 103 99 -31 -37 3 121 -93 -40 -15 -86 93 90 23 -56 40 -43 -125 -108 67 -10 11 99 100 126 9 95 -7 -47 47 -113 -79 -18 -18 127 27 -7 6 -25 -126 -46 -62 59 112 -4 -30 -127 -53 -128 107 34 29 18 75 -37 122 83 2 15 -76 -12 -40 -78 -18 -83 126 109 7 125 -35 24 82 70 13 88 -10 124 24 -23 96 116 51 121 26 -41 -76 -66 -27 -37 -113 -95 -54 -59 -18 -34 74 -84 92 -62 -79 -8 -52 -128 126 3 -71 48 7 -125 18 -48 47 78 -33 -52 -23 -128 -19 -25 -23 34 17 14 74 2 84 -126 -50 -28 111 -4 -74 25 -47 91 101 9 -17 59 52 -35 70 10 -71 27 -32 2 -73 -38 -26 28 39 72 -127 -128 5 46 -94 80 -32 50 -70 7 8 -33 65 9 -127 -4 96 -24 79 -98 13 -21 59 93 100 -127 -14 -46 -72 10 -37 27 -6 -114 -70 23 -121 -30 30 63 -56 -33 15 -40 -74 88 110 74 32 24 0 -22 43 -30 -17 -85 -13 -9 -53 28 -51 20 47 21 0 -13 10 -12 84 40 98 24 18 9 33 28 56 55 46 -12 -19 27 12 -21 -7 127 15 3 -25 89 -26 61 43 7 -37 13 5 -15 34 23 -34 39 9 2 16 29 -13 -51 5 18 25 18 14 54 40 -24 15 64 -56 -25 -10 2 3 -29 25 14 -8 -13 18 -3 8 -26 -24 38 -71 -27 53 119 11 -8 -46 -10 -32 -29 -27 54 27 -11 -61 9 -7 -16 -66 -15 48 -3 35 -3 52 -19 1 24 57 -9 -72 -12 -38 19 -1 5 74 -33 -47 -2 -10 -37 -18 -59 49 -25 56 -59 4 -4 4 -50 -27 -29 -43 -59 121 74 -31 127 12 -46 -2 -33 1 -8 11 -2 18 -9 -9 13 52 39 -3 81 50 -11 -8 -26 -13 31 -27 -18 59 24 -36 0 8 -47 -33 -47 -4 -57 -15 -21 -7 -39 43 17 7 -6 25 -16 5 -9 75 -4 1 -12 -39 -1 29 -33 -15 -14 24 -21 -45 -22 9 19 -8 4 0 -33 26 4 50 -7 8 -51 -110 -3 53 16 -23 29 -28 -1 10 6 -6 117 -6 -1 -13 -20 -29 -12 66 18 -9 21 -7 -4 5 2 -50 39 -10 -18 -9 8 -16 30 52 81 -80 3 12 -6 40 0 17 1 14 -58 17 -10 -11 -18 -22 16 -4 -34 39 -19 -49 0 -30 -1 9 34 -47 -20 -24 -22 34 -8 8 29 2 60 10 -81 -18 -69 -7 -41 -10 -6 -48 38 -8 -8 -6 3 29 -1 -10 -34 36 5 20 117 11 -37 25 -10 40 14 67 3 10 -18 -31 -15 32 -18 45 -5 11 -16 -118 7 -17 24 -42 -17 -6 -34 -13 -27 9 -9 -11 -31 -8 -2 -50 20 -115 -75 14 -8 12 -69 -2 1 6 -41 -19 -8 -24 -51 20 -1 -43 -89 16 -2 -33 18 -7 12 65 5 -49 14 17 24 -26 -18 29 10 52 -55 -4 3 -20 -57 13 43 -52 57 32 11 -26 56 -64 -38 -21 0 -3 50 -47 -29 -14 10 35 -51 3 -30 -1 -47 48 -6 -4 112 -29 -15 -12 56 67 1 -49 -25 -15 -4 34 6 80 59 8 -119 55 -1 -19 -25 -41 51 -5 -14 -4 75 -16 16 -47 36 120 -17 -11 -5 -12 -22 -21 34 -121 1 -32 -128 -59 -19 -7 15 8 -9 70 14 20 40 14 31 25 -43 2 -36 -5 -35 -37 96 89 -23 -63 97 0 -32 8 -4 3 13 13 7 -25 -47 28 -5 14 -10 10 13 -3 9 -77 -2 7 -20 -1 -16 -10 0 83 -7 46 1 -12 -10 12 -10 -34 26 119 7 35 13 -9 65 -21 25 102 -11 -34 -9 8 -13 -93 10 -4 -3 -1 1 -1 -14 -12 -11 18 3 -19 11 -1 -12 -56 0 2 5 41 -33 -4 5 -8 14 2 -6 3 -26 -6 2 -10 14 -9 -6 74 -56 5 -12 50 4 +127 36 100 58 -32 -52 -33 116 12 -102 57 13 48 82 23 -3 106 13 50 27 127 -14 40 -85 14 124 97 -27 68 -45 -17 6 10 -65 22 39 24 57 -25 113 -68 39 -39 17 -120 -75 6 2 -110 -92 73 53 -34 2 127 -28 -6 83 -57 42 84 74 108 -1 26 6 98 115 -109 -1 -66 -69 79 61 -14 -128 -128 -58 -3 -86 83 -84 -58 115 1 72 60 65 -2 -4 6 -60 -128 -6 20 -30 22 -16 20 105 48 81 -42 16 49 71 110 -8 16 -96 6 66 -22 7 -45 127 127 84 30 -73 -41 64 -92 -20 38 66 7 -41 35 -124 -104 34 51 -83 -97 -60 -40 9 45 -56 -53 29 -56 86 -42 -39 80 -26 -14 16 -52 -1 -115 12 -27 48 23 104 58 55 123 -39 13 75 -71 108 -39 13 -22 -77 -36 21 56 -30 -13 43 -56 -20 -125 79 -20 -27 59 103 57 39 6 96 -124 -111 38 0 109 57 -23 -65 -8 -44 30 66 91 -2 -120 -95 -52 -60 17 -69 -2 -62 -37 -23 10 21 -118 17 -65 -2 -92 -28 -68 -9 31 -37 40 -127 29 -15 -14 -8 -23 37 47 80 0 -84 -107 6 29 23 -67 -2 -7 -40 6 -26 -126 -25 17 -84 0 103 36 -6 -47 -62 -17 -101 81 3 -19 -80 -127 -69 -38 -2 55 19 -12 -58 -8 32 -20 -35 -25 -35 -41 22 -59 4 -79 35 73 -64 -46 -19 28 48 51 74 -122 6 33 -6 79 -41 45 -113 -124 17 22 -127 35 -56 22 120 -68 121 -126 34 -54 -68 -105 -105 55 18 -74 90 -26 16 -22 -91 -44 -20 76 0 -85 55 85 -127 35 46 11 -30 -110 -62 -30 112 33 -10 33 -42 29 110 124 -124 -6 -6 57 32 54 11 -127 47 -105 -80 -41 56 43 -124 119 -18 -81 -31 -72 -72 0 -36 12 -9 -53 90 -89 -21 50 -3 -59 -63 -125 66 75 -68 -39 14 108 1 40 -42 76 -123 51 -42 113 -36 -50 -5 -32 -16 -112 -20 -48 45 -57 -120 67 -20 -16 -23 82 -66 -24 13 37 -81 -31 -55 -128 111 28 -32 124 27 105 114 11 19 61 17 -9 -31 -54 -35 -18 18 6 -1 -27 10 -18 -75 -32 26 -33 -69 -98 10 66 -125 -20 78 -124 15 -23 99 -47 -100 62 34 10 73 -88 -51 -48 119 88 17 -90 -76 4 -119 -9 120 17 55 57 88 -49 -39 61 -31 -67 -15 88 41 11 27 -5 -4 -67 45 6 17 30 11 -39 29 3 11 40 -17 -33 60 15 -12 -45 94 -4 -17 -48 29 -34 -53 39 12 -24 71 -69 38 -29 -37 60 -13 28 41 79 32 -42 31 -5 -57 -20 80 -32 -22 46 -57 24 26 -86 -103 11 -26 -1 61 -63 -20 -43 -2 44 -90 62 -2 7 103 123 33 80 -45 -92 26 -41 -38 1 -32 0 -31 -40 -4 31 36 27 37 -34 47 42 -16 69 -9 -69 -58 25 112 -20 -76 91 -13 -25 70 -60 12 -115 17 -8 10 73 -22 -36 -1 81 -68 10 47 -69 -42 -2 72 40 -57 76 62 -34 70 2 12 15 121 -29 -121 30 -26 -30 6 69 -53 0 -31 79 -123 -3 47 -6 32 -128 -51 -15 -61 -31 -44 -15 30 45 3 9 71 69 -76 47 -46 -25 81 45 56 -90 127 -37 49 -81 6 37 -121 -16 -11 -56 -50 -30 25 96 -44 106 -91 60 -38 -44 -7 -27 53 -53 63 -73 -110 -57 11 97 -50 115 71 94 6 74 -14 34 -34 48 72 16 0 17 -123 117 -71 -49 -82 83 -5 89 117 48 -120 -49 40 -25 64 5 -7 -76 -45 -33 0 27 -36 -13 11 27 116 -79 -46 121 -18 30 -7 -52 -125 -42 -111 -31 -97 66 -12 -8 -39 43 -69 -14 57 -44 -4 2 31 -12 113 123 -19 87 -28 76 -95 60 -105 1 -77 1 -37 -5 3 64 18 -16 26 -32 6 126 -43 -52 60 -87 28 -36 75 -64 -33 -33 -53 -108 35 31 92 -29 -8 -96 -11 -5 76 127 89 -127 -28 -10 -115 -4 16 -25 -95 -29 37 -59 -11 30 43 35 -106 -40 26 28 -68 -22 -68 -4 108 51 41 -86 7 8 -54 -19 78 -106 46 17 -93 2 4 -42 -34 -93 -66 9 -82 10 81 18 30 61 24 47 11 64 7 -10 -51 -35 41 127 97 -15 20 121 96 -7 17 21 43 105 -98 -55 -104 44 30 -84 -50 -22 13 26 53 -107 127 66 -66 -18 35 84 126 34 40 6 36 118 70 -27 -34 60 -88 -96 110 45 24 3 13 -126 -60 19 -53 -21 -62 -99 13 -62 -20 -10 18 -36 -56 -30 13 34 -36 -6 -36 103 -75 -9 -125 11 -128 -118 -58 -45 65 18 22 -71 47 92 1 -69 -16 15 60 -13 -13 15 -30 -84 42 -82 -30 -12 -42 -118 1 10 -56 122 -107 -43 27 91 -48 20 -123 97 26 -32 26 -69 -25 8 48 28 91 -125 51 -47 -37 -21 -23 2 -40 81 -3 -54 63 -22 -30 -44 -52 76 -32 101 79 43 24 -3 34 -31 11 -39 113 -48 26 -76 -35 -49 -50 12 -119 1 27 50 16 12 2 -103 16 50 -5 32 38 86 -107 15 -110 -22 -12 12 -12 -1 0 -27 25 -10 -23 2 66 -62 -38 -95 -6 -20 -54 123 116 -29 4 -34 63 28 -119 -17 -17 59 -16 -17 58 4 87 -23 -29 11 94 -13 -100 80 127 -45 9 122 83 2 125 -11 109 -13 -7 11 -2 -1 -34 -127 2 -54 -92 -20 59 -36 65 0 91 24 -30 -58 -19 22 21 -99 -124 50 -114 -41 71 85 35 -13 55 112 80 25 -21 12 -96 -10 -93 -50 -1 -92 -95 41 -36 47 20 -77 -30 71 29 -61 -94 127 31 122 10 45 58 7 -37 -8 125 77 -109 -55 28 44 2 83 -32 69 -122 -104 -126 6 -60 30 84 67 -72 -40 48 -127 -112 -60 26 -66 59 43 -128 -40 -13 -28 29 -4 -7 -65 9 -36 -20 -20 -36 -75 -48 14 -68 30 -73 33 -116 43 -30 126 -21 -83 -96 -15 -3 37 80 -103 -28 78 -89 -20 -7 -39 -21 -53 -49 -69 -121 -63 67 -62 -1 -47 90 -108 50 -22 -106 -15 -122 -19 8 -66 69 -114 0 20 -18 -7 1 -68 30 17 123 -27 -61 -120 24 12 -38 -51 -50 -50 -96 -64 -46 -84 -88 22 -23 -39 -9 63 -85 5 -19 31 49 -2 -25 66 -80 38 -17 7 -44 -7 -49 15 29 25 -40 -9 -14 8 49 -54 62 -56 -40 -90 -9 36 -35 20 -14 32 55 -16 -8 -23 43 -51 -2 -49 66 -35 -55 -38 21 -47 -36 -7 4 4 -18 62 -50 13 34 -3 49 -51 -90 23 -95 48 20 7 16 -56 -29 -19 -98 -20 34 9 33 6 13 -78 -80 29 4 -10 -3 -105 -2 27 27 48 -41 88 -7 64 -50 1 7 11 -46 -5 3 20 0 -64 8 -128 15 -2 -76 -62 28 24 -31 -117 -100 -13 58 19 9 8 0 15 -41 21 20 -31 -31 17 -11 -27 70 38 37 -11 13 81 78 -14 3 -89 -26 -46 -40 -31 -64 50 29 -13 3 27 72 7 10 -11 54 -13 43 23 2 115 54 0 72 27 24 31 -39 44 13 -30 -33 -2 -51 -26 -4 -26 -13 31 66 92 95 43 -58 58 18 19 13 8 27 41 3 -47 -8 -43 -19 38 -127 22 -23 -102 43 -4 -85 17 19 53 -56 -32 -67 -34 20 -29 1 -30 65 -12 -24 -115 -95 -27 -48 -45 28 -44 -79 -35 -17 -34 -14 5 4 -34 -39 -17 -60 24 -61 6 -40 -59 -56 -57 -15 -7 -22 -35 17 -51 -9 -51 -13 -32 68 18 -69 -90 2 -27 -25 -85 101 -55 -60 -39 -56 -82 19 9 -68 -21 -25 7 -7 -8 -17 -65 -29 -88 62 -42 -74 -7 -92 -31 10 -39 -24 1 2 49 -21 23 -4 63 24 -48 -15 33 57 -42 1 21 -41 5 51 32 60 14 -13 -34 61 13 24 -14 -14 -12 2 -10 -22 61 16 -16 -41 16 13 9 -3 5 31 -3 37 45 56 -121 -14 -56 41 -23 7 45 36 2 -22 13 15 -42 23 -65 -5 -1 34 5 -45 35 3 9 -29 -41 1 39 -36 6 -52 -19 12 39 19 -30 -28 32 9 6 -12 1 12 11 12 8 -6 127 -9 -34 -8 14 -5 1 -79 13 -37 14 -39 -70 -35 -20 64 -4 4 0 -75 -45 -57 -46 -11 65 -42 2 -69 30 -5 18 26 -6 34 30 23 7 26 -9 -8 -40 31 38 -20 44 43 -18 43 -46 -6 14 -42 25 -61 46 53 31 -77 -19 37 -3 34 2 -40 -7 8 0 99 -44 37 -6 -3 -13 -9 1 56 -59 -17 -36 -30 -82 -37 -46 -37 26 1 56 41 -1 -40 28 -99 -52 22 -66 -4 17 52 -76 40 -73 19 3 -29 23 -1 -128 42 -89 -28 21 -38 24 24 75 -87 48 -46 20 3 -26 0 -68 4 -84 74 -13 -58 5 -11 -118 56 -20 -36 -11 -11 -31 -36 -22 -8 -35 -26 -67 -15 52 -30 23 -1 -49 -104 -46 43 -27 -89 -24 -39 37 -21 -40 7 42 60 -31 -98 -44 -30 2 16 -78 -54 -26 -10 26 -32 5 -5 -31 -92 -29 -73 13 0 -33 -36 57 -2 -33 24 -29 -106 -8 -120 -113 -67 59 -14 -66 -16 -5 -44 33 -8 8 62 1 -13 -14 46 -51 -52 0 12 64 12 -38 86 -6 -19 -21 -11 -46 16 -70 59 -36 7 -36 -16 -33 3 15 54 8 48 -118 -25 -59 26 25 44 20 -17 4 26 18 -51 -6 -14 39 -22 -51 7 25 -40 27 -11 -8 29 -11 -33 27 -18 -9 -45 -16 -13 -11 -60 29 -65 70 -22 -47 20 -33 30 12 9 22 -31 -16 33 -33 -8 41 -41 75 -3 45 -29 11 -7 50 49 -70 103 54 -13 93 -58 37 -36 43 -37 -2 3 58 -20 -128 45 -44 -77 20 71 -40 -21 -124 35 93 127 -14 86 -40 16 13 103 48 -57 -16 19 87 75 11 127 40 -123 -91 -28 -3 74 15 34 -68 -47 79 -33 58 5 -98 42 121 -28 -74 23 42 -15 16 7 36 63 -121 -31 -59 106 -41 9 -12 0 -13 -75 -7 -1 3 34 98 -13 -89 -30 -18 28 -5 23 35 -96 -107 -24 -34 95 108 115 80 -31 -67 49 5 -57 74 56 119 127 37 49 127 127 46 50 74 64 56 120 44 73 84 -45 125 91 42 101 -16 -27 109 116 78 32 58 69 50 127 92 -54 27 118 103 113 -56 51 127 -2 125 27 28 -29 78 99 -32 21 114 112 38 -99 62 83 -9 -9 42 -77 56 10 15 96 109 32 21 10 100 113 102 24 35 -19 41 84 98 54 -75 -1 123 2 91 64 22 80 122 117 -8 26 113 -39 55 35 11 31 76 77 113 31 -17 15 87 -41 26 -112 72 -90 89 -57 65 -77 96 18 -46 62 -42 -12 16 -31 53 -38 9 -68 56 -15 32 67 -43 -60 -17 -95 -127 -21 114 87 -87 -36 -39 105 121 16 58 -60 -110 -38 -103 5 -114 115 56 -48 -44 7 -62 -38 8 12 20 10 53 41 23 -34 -49 16 116 -44 17 -10 -34 -47 21 -84 -34 64 82 22 6 -27 68 41 -6 -50 105 -8 -48 -91 -10 -63 26 101 -70 56 -68 39 78 -27 -47 -36 -46 -93 -49 -46 -1 -7 -89 32 -16 -6 -86 1 -65 -102 117 36 60 -123 53 7 -31 126 78 105 -49 53 18 -50 -33 119 38 -46 -90 -7 59 -33 112 -62 -26 20 -19 1 99 -81 -80 26 78 -29 -30 -13 75 -51 -46 17 15 51 5 36 25 46 20 7 65 -110 73 32 -22 44 -128 106 -34 -36 -60 -75 -35 -3 -29 -20 24 73 62 -7 -7 44 51 109 -96 -8 12 -8 9 11 -44 12 63 -73 44 -7 29 21 -128 83 47 29 65 15 -34 41 9 -18 -47 -19 -67 63 2 -34 78 -79 34 11 110 -38 11 5 80 -38 -26 5 48 27 24 -40 -86 40 64 -21 11 -54 -24 34 32 -60 11 10 -124 24 -71 -41 116 -89 87 -38 60 7 26 -36 60 61 -25 83 47 82 -32 -44 -9 49 -44 33 -7 33 -25 123 -4 -42 37 -18 50 84 -66 2 -20 -3 -21 54 37 -17 12 59 55 29 -70 -39 30 51 27 4 -84 2 -2 -22 16 -128 114 -18 23 30 43 11 -66 59 1 6 -47 0 -75 13 -54 19 127 6 10 -25 61 76 -21 41 37 32 29 88 1 -53 6 -65 114 41 -4 19 38 20 40 38 33 -21 22 27 44 18 -7 27 124 14 -35 108 18 15 -23 60 -37 -77 -10 37 72 34 -1 40 29 6 -73 29 23 43 -42 23 87 30 67 15 35 42 49 24 12 -12 -7 66 -46 60 65 -58 -1 46 -2 -23 33 43 85 60 -23 47 7 87 -25 -22 -90 -23 -82 10 6 -29 -104 -33 -82 15 10 6 34 -6 -45 14 2 -51 39 -1 -9 -28 -7 -45 8 -83 -65 -43 24 -7 44 54 -48 -20 16 -67 -73 1 29 -40 18 102 127 0 35 56 80 45 22 36 37 34 -19 7 -7 -39 -19 1 28 -81 -10 56 92 13 15 11 16 -45 33 87 -126 100 20 -127 -43 -42 83 21 -28 -8 -4 -119 -20 -42 10 50 -75 -6 9 43 -9 20 -69 -70 -127 30 -86 56 16 91 36 -67 -49 1 -37 35 -45 17 -88 -91 -5 -40 -34 31 -17 -6 -36 -15 -54 66 45 3 -92 -8 87 5 -13 -16 40 -61 38 42 -34 -76 12 -22 -30 -27 -10 -79 -6 -23 -21 -65 42 -40 -47 -48 -3 -24 -98 -59 -90 -68 -2 -37 -64 -94 -19 127 -10 6 9 -16 17 -9 -3 77 -26 -42 -36 0 -26 10 62 103 37 -9 -45 26 34 21 -78 -18 -42 50 -5 3 17 40 0 116 74 -25 15 -127 -1 11 25 -30 -35 -112 -17 21 34 37 13 115 -8 -16 127 -16 70 12 9 -11 35 -57 32 -70 40 42 22 30 38 -3 67 121 -44 -2 89 -12 90 10 97 30 9 -43 -10 17 36 20 -27 -52 -12 -47 -32 112 -1 -81 -2 -46 -91 -61 19 -126 55 23 13 -51 55 35 41 -29 -25 67 -30 17 -5 -18 -16 -42 -33 -21 -13 -10 13 21 -34 6 37 -37 115 -80 -93 34 -41 -54 -6 0 34 47 -43 4 33 -45 -68 30 -8 -45 30 -46 -90 7 -66 -40 -37 32 20 0 9 38 -6 36 -39 18 56 66 28 -29 -40 19 -9 -13 -13 -63 71 11 8 38 -57 -14 43 -15 14 2 -21 13 -59 -37 -82 -6 -118 13 -20 24 19 -13 -10 -55 4 36 -111 47 78 35 11 -42 34 17 -11 86 32 126 10 14 -71 -28 44 125 -29 50 -7 90 37 10 -65 40 -77 92 1 77 38 80 16 -98 -117 63 -28 -84 -48 53 45 -40 -47 -59 -112 127 80 26 35 -101 97 -41 47 -9 -2 -18 -51 -124 123 -77 -12 23 42 51 51 124 -35 -67 115 -81 25 31 -30 -6 -43 53 35 50 -59 30 48 45 -35 -123 -5 -29 -69 -107 74 4 -25 53 127 -51 -43 11 -26 -55 -61 73 -41 20 44 46 18 65 28 -8 -21 5 -27 -62 80 18 -1 -38 7 83 71 -16 -6 -8 93 13 0 7 79 12 41 107 100 3 -45 88 -19 9 -114 -11 28 -19 -79 -35 41 74 -8 -37 127 43 -66 2 -61 -72 -46 120 -47 -100 -98 -6 30 -37 -4 57 17 -26 14 -30 21 -56 -1 59 9 24 29 37 123 16 19 50 -77 -78 -12 46 -61 27 21 -46 29 -19 -28 75 71 65 -34 -46 20 -103 84 -10 30 -61 -18 -20 12 82 51 66 64 11 -40 -86 -115 -110 -7 1 100 83 -57 -89 -78 -4 -51 -95 28 51 84 -38 -120 102 126 -63 -16 99 -85 67 125 -71 -35 -120 18 -36 44 -4 -37 -20 53 -73 33 105 -101 -3 89 2 -20 100 -28 77 -108 -15 71 0 0 -18 125 62 -91 23 35 26 27 59 36 87 18 -57 91 -32 71 -52 -60 -37 -60 -81 -22 -27 6 21 -41 -69 -37 -10 49 -37 -127 -115 -54 69 -96 -93 20 89 103 -14 32 123 61 54 52 121 -4 -26 -54 -116 -45 23 30 -57 19 66 11 -42 88 -88 -26 -16 -2 50 -86 12 -85 55 1 -5 -23 -50 13 16 -8 81 -12 22 61 47 -22 15 -8 -1 94 90 -7 67 4 121 33 -124 -23 9 -101 15 -108 19 -126 -36 -30 -5 -84 -17 39 -44 2 -14 -46 125 10 -51 -21 -22 36 -29 75 -84 74 -58 -59 -43 -48 104 -21 44 -69 6 -31 16 -79 -27 -21 -128 41 -128 24 79 -9 -125 -65 -123 -52 -10 8 -64 -53 64 12 40 -94 -126 16 88 32 30 -46 -29 -12 33 -14 18 -33 -52 -74 -128 -34 1 52 116 42 10 -70 51 -48 6 -55 18 -44 38 49 23 68 55 -21 -122 -66 -41 14 -84 -50 -8 -126 -9 111 8 -127 60 22 -63 -51 -25 -25 -87 -27 6 52 -43 -30 20 20 5 -17 -18 -31 93 1 -33 37 12 -35 -54 127 20 53 22 -16 24 -128 104 47 -126 -43 -78 -61 102 -127 -128 1 -52 23 24 -82 57 -17 -73 47 -127 -116 86 5 96 127 -12 21 106 62 85 25 127 27 53 -50 -27 -3 -20 -63 -126 65 45 94 -28 -30 125 73 -9 81 125 -28 62 72 71 126 123 -79 119 51 -18 56 -15 -28 33 -110 9 -106 -73 11 -102 25 78 93 114 -126 106 4 53 77 -23 -33 -57 69 52 54 112 95 72 109 58 94 61 -49 123 67 -49 -9 -68 -27 13 -45 66 49 -44 14 23 -44 -51 -11 -25 30 59 -54 -22 -3 8 50 -64 73 48 52 39 92 -33 -72 35 -46 53 -59 127 -3 68 91 -61 -85 -43 -94 71 -45 38 -77 4 118 126 -91 81 -23 121 121 8 37 -121 12 15 60 77 -3 64 2 -12 8 -100 -117 -51 14 33 -121 33 40 -64 -18 24 37 122 -4 -2 12 1 -55 40 -27 30 -15 48 60 -20 4 40 21 24 13 -43 -47 17 -51 27 -83 14 104 48 -42 59 47 -17 -2 -21 -58 38 -44 -37 7 -5 -28 -31 -7 -90 -52 -110 -26 98 -5 -17 -37 81 -60 54 48 -34 23 -29 50 35 -58 -7 76 45 13 -64 13 9 19 -23 -2 33 55 -75 -39 -9 -37 48 -39 31 48 60 -16 -60 -25 -26 21 -51 3 49 -22 32 67 -15 -20 -17 -82 -20 -72 33 43 -11 32 0 12 3 -12 25 -43 27 -31 -27 -70 -5 46 -24 -48 10 75 -8 60 -62 -36 -28 -10 -27 -56 -49 -28 -5 38 37 108 26 -55 -3 -34 -28 -43 61 53 59 77 127 24 -10 -49 65 20 -72 -22 30 -22 -109 -96 12 127 -13 64 -56 43 -102 27 3 78 -29 -19 85 4 -56 13 -12 -17 -10 -30 16 45 -44 -92 -95 8 -43 -51 88 -46 -22 -33 16 90 81 -110 -14 33 23 -43 19 14 -29 81 38 12 -21 -16 39 -32 -19 21 49 71 35 -70 -19 -81 -49 11 103 -17 -79 -45 -27 -55 -80 -19 -65 -58 27 5 -3 -28 25 -5 -61 -65 -85 46 -8 10 40 -14 25 -26 45 -116 -127 38 -46 -83 -43 51 94 -18 13 20 -36 73 -34 -37 -21 37 53 -66 -18 -49 -3 -72 49 -34 39 -25 33 47 -71 15 -118 -33 0 -15 105 30 -5 -25 -15 43 72 106 57 -17 -31 -56 94 -52 25 41 -111 3 50 -44 13 -51 -48 14 -97 17 9 8 -5 -46 -8 9 -11 -17 -34 -20 39 30 52 -52 -6 -1 45 37 78 -24 -23 28 -49 -76 0 32 -73 52 23 -52 -12 22 85 -18 -68 91 52 5 10 92 -2 3 -41 75 -53 17 28 41 -33 -19 -3 -49 86 32 -81 -15 -35 67 25 28 -60 14 12 -12 -22 64 15 -38 32 -100 -13 39 54 36 12 -50 21 2 103 5 -38 -6 -16 -38 10 75 -11 -54 -128 -7 -12 7 25 -44 37 -98 -22 4 -25 14 4 -47 -127 -6 71 16 -9 8 -47 -26 -48 77 45 -11 54 -3 -42 112 32 -31 -67 -31 -64 5 45 -116 11 5 10 60 -3 24 29 -59 -39 -23 42 -68 16 -42 -48 -121 -3 94 12 -40 -18 -1 40 17 73 -12 -23 -16 23 16 -75 -27 -45 3 63 -72 53 -48 30 59 5 27 -49 -20 -29 5 24 22 -86 -10 -92 26 46 8 -40 3 -67 -23 46 -31 44 53 -17 56 58 83 -7 53 34 -11 -79 -29 58 22 -89 -76 -19 49 14 24 45 20 -35 19 -26 -59 49 50 -38 122 69 64 91 9 28 -89 2 49 -14 2 28 -37 -30 3 41 7 19 11 -25 -66 -7 11 39 14 93 43 -39 65 -34 4 -106 -15 8 1 77 -34 31 2 23 19 1 3 -9 50 -16 -82 -100 1 -58 -41 6 5 -48 27 16 -126 65 -33 -43 72 37 8 45 13 -31 37 71 -27 52 -96 58 -63 13 8 20 47 32 -34 -34 -53 -19 -34 4 -11 -25 96 42 -24 -48 19 105 5 -42 19 -9 24 51 -39 -98 10 40 -17 39 15 11 30 0 82 77 0 55 -18 -60 -17 -44 20 -44 8 -53 8 20 30 104 54 43 -47 30 -15 -81 -7 60 -20 -33 -34 27 -41 -22 54 32 21 -21 -78 -102 34 -33 -26 -26 -5 99 25 6 19 88 -36 -96 -24 70 -27 19 4 11 -36 64 -84 -21 -98 83 -38 -57 -3 -124 4 -127 3 8 -13 -37 89 -17 -113 99 23 -7 27 -13 -73 47 -121 -24 23 76 122 64 -27 -51 18 10 63 32 11 57 -46 22 36 70 -6 46 23 77 17 46 -2 89 3 -88 42 34 50 -18 -51 40 127 46 -21 18 -12 -110 1 47 -32 65 -96 40 63 11 61 30 -65 -70 -40 15 -20 23 -2 -61 -39 6 22 -128 -18 42 12 -84 -34 64 -25 32 -41 35 13 9 -117 24 28 -23 26 -83 52 -20 83 60 24 -36 50 -9 -37 76 65 111 -85 93 7 53 -15 -127 -25 -74 48 84 120 -11 58 -97 -33 -82 -125 40 -11 10 72 -8 13 -122 52 12 -74 93 34 6 60 -6 3 34 29 -120 -6 -21 -10 31 -46 -107 -61 -1 -15 8 -123 26 5 -50 -101 -104 -46 -18 -63 -49 16 25 -24 17 69 46 18 97 51 72 -17 -41 17 36 -10 39 -22 43 -81 -44 -9 72 -21 -56 -4 34 44 -3 31 67 -49 -31 127 33 -45 -12 -25 53 -27 -40 -25 89 15 -61 73 -52 4 26 -19 19 -30 -37 15 54 25 22 -3 8 -70 82 11 -19 -37 -36 44 19 27 18 53 6 37 41 64 59 23 72 -36 -53 -17 -49 16 -3 -30 -2 -119 29 -64 -27 11 7 -24 14 39 -6 27 76 -2 -93 -52 -21 94 51 -21 -27 68 -22 27 9 34 8 -63 55 -81 80 -23 17 54 -127 78 -73 -98 26 111 36 -18 0 31 104 -39 17 69 -37 -6 16 10 11 -15 25 -43 28 21 -25 -78 -106 7 -14 -46 46 38 -22 -18 103 9 -51 -64 -79 -96 -115 71 38 30 15 -15 107 -16 40 29 5 11 72 -106 29 57 0 -60 -128 17 -125 -73 102 2 59 -48 -116 16 32 13 6 37 72 -1 22 21 8 20 42 -26 -39 -21 -21 56 -43 38 89 21 -56 89 125 4 -48 -13 -106 -75 -125 -123 68 -103 -47 -22 11 -45 -37 -97 -17 24 -16 28 -54 14 58 -18 -17 -62 60 34 12 80 -125 -70 -78 -35 -43 -23 33 -115 -72 -62 -103 -128 58 2 -8 -5 -63 -1 -117 -82 -7 -37 -44 -70 107 62 37 -1 -59 39 -114 16 -20 17 15 -92 -121 -94 123 -56 -112 -60 -52 -65 -78 -36 -96 -59 9 16 -33 56 -1 -47 -7 127 75 -44 23 58 -32 -69 25 33 0 -35 -1 -23 49 -53 -92 -1 1 -68 2 33 10 -32 18 -59 -13 -48 -22 -26 -29 44 -69 40 -41 -43 17 -9 12 -47 -53 -23 -22 -18 -10 -1 -18 13 -1 13 46 -22 55 19 12 25 2 -9 -21 29 -31 -39 -64 -3 -11 -53 1 -14 28 0 -44 -76 10 -39 11 -85 -23 -25 -41 -19 -6 -13 -18 -44 9 3 -4 -9 -16 -59 -24 49 -34 -24 92 48 -46 20 -36 40 10 25 55 24 -19 67 33 73 -8 -33 -14 15 -1 127 -82 -9 -16 -14 -35 20 70 -58 111 -67 29 -86 -62 -43 72 60 56 23 -16 -26 127 50 -33 9 62 -58 -84 -23 -85 27 -14 -119 -17 -30 16 -74 -9 34 -39 -43 -79 -21 81 21 2 -73 1 -47 -101 -109 3 50 127 -39 107 71 -46 -42 51 -6 -87 51 -70 -29 16 -103 -65 84 -45 16 81 42 25 2 95 -3 -69 100 -7 49 100 -5 20 17 79 51 92 -113 -12 88 32 116 -27 -73 -14 -23 127 127 12 17 39 -69 -106 -14 -59 -73 121 -29 -29 12 127 -99 -103 13 -9 28 30 31 6 108 39 83 50 43 -5 92 83 25 -41 -119 26 26 -64 24 -40 57 -2 -48 -96 -10 100 27 39 -23 -22 -58 -52 28 50 50 26 -48 -124 36 -101 43 -117 11 38 22 -88 85 -55 10 -39 101 127 -95 34 57 90 91 12 -42 14 69 118 57 -57 94 -95 13 -73 29 -49 -24 112 121 -43 -34 100 26 -42 -30 -5 -106 79 -41 -25 61 -20 -81 29 114 50 27 -17 110 89 -49 -65 -79 -7 -28 -84 -25 36 127 -5 61 28 52 48 -37 -19 117 -35 22 69 94 -102 -33 29 -38 -1 111 -61 8 -50 -41 -46 65 86 -74 50 73 -70 87 62 -37 -109 -27 -4 113 -128 -47 42 37 53 42 9 -2 -6 -56 9 -8 16 -10 74 31 17 94 95 -14 -121 37 -37 41 83 24 -126 -29 6 -29 -33 23 -20 -103 -22 -59 12 -94 -18 -31 1 -44 23 127 -25 44 105 56 59 33 -42 120 21 69 66 8 -38 -27 34 94 8 121 -90 1 15 2 -21 -59 -35 -22 65 -6 19 -66 -70 56 -51 96 35 47 30 -11 -19 -110 -30 33 79 125 -120 -15 -87 26 -127 70 -34 -21 53 -25 -20 -71 80 20 77 108 5 46 22 -38 -60 18 119 -22 58 71 -117 11 -126 -122 -6 -3 32 -48 14 23 55 34 -12 -126 29 -19 48 -82 74 12 78 52 -18 5 -28 12 127 83 -114 -96 6 44 127 -7 61 13 28 -45 -44 17 -57 -96 6 11 127 109 127 -38 -11 -46 10 -119 127 -121 41 14 -82 8 -96 -54 33 -18 33 61 16 -22 10 127 102 -37 -86 -16 -94 118 -13 42 -70 12 39 105 105 29 -31 97 -63 -20 -15 -38 119 -111 33 -74 36 -87 21 7 18 118 -28 3 -25 -7 -124 -94 -54 76 67 91 -24 -22 -119 75 -60 -19 127 14 99 113 -127 83 63 28 83 -68 114 -63 -77 -123 32 -94 -57 99 116 87 70 -3 -23 127 2 51 77 20 -33 27 116 82 74 -119 -35 70 116 54 76 61 -116 -2 -57 -27 15 25 -43 -18 -18 95 5 84 -14 -127 127 -119 -66 -97 36 109 57 -21 28 -120 -41 -8 45 44 52 -28 18 26 46 31 -123 -25 29 69 120 -4 -105 97 121 -23 14 -14 -7 3 56 -58 115 -36 18 -9 -126 44 -90 58 53 2 14 -18 29 -120 26 127 -8 1 -1 -128 -124 -128 -128 -44 34 27 5 -26 -17 -2 -64 -34 -125 24 125 98 -11 -44 -43 121 79 30 55 -93 99 127 -85 -72 -60 23 -78 -95 -54 -86 -37 127 -76 28 126 -126 127 127 11 -105 -76 47 -60 58 -25 19 32 6 74 -50 -12 -123 -112 -13 -43 -42 -20 -42 -69 3 -35 127 87 -90 -74 -2 -107 16 49 -70 122 46 29 3 -94 16 27 -81 -1 -26 -120 99 8 99 100 14 120 52 -94 -24 -64 14 121 5 -26 -113 61 3 48 -89 -120 -36 -41 17 7 50 110 32 -68 -117 -16 -79 63 43 -49 61 -33 93 -80 -61 30 26 -55 78 114 126 -112 75 87 -20 -50 -46 -119 -34 -127 19 -99 63 -52 36 122 -47 -47 26 -64 104 -39 -84 116 -67 16 -31 32 -52 3 126 4 15 -116 31 -20 -24 -12 4 -30 -23 90 127 5 37 -92 32 -56 -29 127 -10 24 -77 -36 50 91 -25 121 88 59 41 55 -53 -68 43 46 105 92 2 25 88 -86 35 14 12 56 -122 -84 58 57 -16 -52 -35 26 23 -2 -6 -71 -81 8 -81 -16 -82 127 -26 -13 18 95 -115 1 117 -13 -50 8 -55 -126 2 -69 15 79 18 36 -85 -113 -81 -75 81 85 -39 15 77 70 24 -77 -11 113 127 -74 -66 -40 -74 -11 -76 34 -104 -11 66 59 14 -3 39 20 87 -71 0 41 -39 124 28 34 -124 53 98 107 -27 -31 -23 69 0 -42 11 -36 24 -15 -55 11 23 -116 -51 -29 28 12 31 90 53 -53 18 -73 -40 19 -64 -35 -85 -77 40 -47 -7 52 -26 -4 31 -22 29 -37 67 19 -6 -38 2 -2 -45 -49 -28 -125 63 38 91 94 -52 26 71 1 121 29 18 8 -23 -33 -44 -8 104 -76 119 -28 -22 -36 -3 -49 -68 74 85 -59 -27 116 -75 -21 16 -3 -41 -73 7 -15 -39 -27 36 -12 -75 -43 -60 -66 34 127 32 -22 -37 -70 30 49 15 -17 -104 -27 -41 -94 -24 64 -50 -75 -126 -100 -19 -22 -20 41 30 4 10 -6 42 -2 2 -32 65 -41 -81 -65 -16 55 -115 78 -69 -16 -40 -16 62 9 26 113 70 -73 40 63 38 -71 -59 15 85 12 -24 -86 -24 -128 -15 10 -6 -75 -36 -38 -29 6 -4 -25 -13 -59 -49 -33 -68 -40 -64 -47 -43 27 -23 -18 39 9 43 -9 58 -49 -2 119 -75 -90 -76 -50 3 -37 -15 -4 -65 -17 -64 4 32 -113 -55 58 -127 35 -53 -57 -12 45 30 31 13 39 39 -39 48 -27 -34 -5 6 -48 21 13 32 -53 37 0 10 -43 28 -49 34 -22 -127 16 -16 -83 52 95 39 95 -21 27 -39 -1 3 -8 28 48 -16 -54 115 -43 58 -45 -94 8 -61 49 -105 -48 28 67 -49 28 -24 25 0 25 -21 -109 -85 -52 -86 -37 -13 7 -22 -65 97 -78 9 17 -70 -11 -15 -43 -1 60 7 -73 12 -82 -12 -30 66 69 22 -52 2 -33 41 12 57 -52 -31 -6 39 27 -45 -27 -15 -15 29 54 9 11 -24 0 26 43 -86 -38 20 -87 -1 -11 70 100 -10 30 -28 1 11 -11 -41 50 25 -17 61 17 12 -70 29 21 -47 -23 -47 9 -39 -34 -14 -19 -117 -15 -41 49 72 -61 45 48 12 -6 28 -43 -28 40 39 -14 14 34 -46 -10 20 -6 14 32 -29 54 -68 -55 31 -127 115 -58 -2 13 71 -80 -53 -28 -45 -121 -119 -126 81 -101 112 17 51 61 -93 -27 73 -90 20 102 -10 -30 -63 119 -105 17 -73 11 -31 -94 17 19 -66 -127 -117 96 105 -29 -62 0 -58 119 36 52 81 -72 1 -19 -30 -72 -28 125 -109 86 -21 -16 53 55 49 -126 -69 -59 -67 14 18 -127 -128 52 -38 94 -5 -117 -89 -16 -26 -60 -121 -127 62 -81 48 -61 31 -3 -15 29 -3 50 7 -31 -91 53 19 56 -6 71 -27 -62 -81 -37 -1 7 -15 20 36 19 -35 -40 44 21 16 61 -15 44 54 42 -19 -2 -27 -6 13 -119 -65 41 101 16 12 42 25 -20 60 105 -50 8 57 33 75 -116 -4 11 105 22 13 -22 63 -10 67 -20 62 56 5 -16 -28 9 43 40 5 -43 -104 83 28 -1 -58 -32 -42 -44 20 54 -16 60 -6 -30 -37 0 48 -62 107 46 16 9 54 34 0 31 48 23 73 -61 -66 53 -6 -25 -40 119 97 -25 64 124 8 102 53 51 -119 67 31 44 -70 -4 -52 18 -51 106 42 -112 -30 1 52 60 -9 21 123 -28 54 21 26 41 -118 16 -128 30 -67 -18 31 -82 4 -59 29 75 -47 -89 -102 8 16 -110 -86 -72 21 -26 48 103 -46 -29 56 112 47 86 -127 -58 -124 -77 27 17 -33 -33 -30 93 59 -60 -128 -69 78 40 127 25 -32 -17 93 -11 47 -123 -77 -8 -76 7 10 -123 -33 -71 -4 5 -42 55 31 -7 -124 87 36 8 10 12 17 -11 -87 -2 -126 15 -1 -10 -60 -72 -106 17 49 -13 -92 -56 -8 -73 -4 8 72 87 42 -69 -46 -14 13 87 -50 -90 -24 -89 -39 -123 52 81 77 -36 -106 11 121 -122 -63 -17 -45 -73 13 -95 -65 122 -31 105 -14 68 -52 -56 -29 35 -5 -47 -4 -16 -127 -124 126 1 59 -49 41 -3 -3 2 34 4 9 0 -31 51 -74 -96 89 -11 -73 -49 81 43 6 -48 -90 9 17 -54 79 -56 108 -69 1 -50 12 19 -32 31 -37 -52 -9 -35 -54 -31 -128 -36 85 -7 31 36 -2 28 -10 39 -12 18 107 31 127 -109 89 -85 29 -62 -33 -47 70 -48 6 5 -99 -14 31 27 -71 62 29 12 7 43 -51 20 -52 -14 13 43 16 -113 -75 13 -58 -37 48 96 -97 -21 19 -12 21 -6 -24 47 102 39 95 85 -41 -8 -28 97 18 8 -21 127 -100 46 117 55 19 23 -79 21 52 -21 53 37 -26 41 -9 70 -15 39 -53 -5 11 -19 -31 -30 -14 -83 -70 -127 12 98 73 -8 -60 73 -71 59 15 40 -5 -3 19 -66 -51 -33 -23 -32 20 8 4 -36 -66 46 26 -70 35 -4 -8 -36 82 -23 82 -21 -57 62 45 54 3 15 25 88 54 -42 -3 -43 -17 68 25 -32 47 69 3 -42 -76 13 -17 77 -123 6 -34 -84 -74 53 28 -13 101 70 60 15 124 -11 23 34 25 1 -2 96 -45 -58 30 -20 -43 -12 17 -36 -45 75 95 -56 61 -122 7 33 -34 -20 -124 -47 97 -87 -45 8 -87 -33 -15 -33 13 7 -25 -120 26 -24 -12 33 40 -22 -11 -17 77 5 107 124 -33 -12 -111 -121 24 59 13 40 -40 -80 -14 -16 -29 -71 29 -100 14 -23 29 -116 -8 -96 64 11 -105 12 -18 -33 59 -23 11 -49 -73 96 16 15 53 25 -18 -100 -45 57 16 -47 -19 11 -31 48 48 79 -54 -6 21 58 -19 -66 43 -56 16 7 93 -75 61 7 6 25 -53 18 -1 -98 -107 103 62 76 -78 36 49 15 75 39 -30 88 59 69 -11 -19 23 -61 46 -9 -21 2 66 8 -18 -83 20 33 -92 105 -67 -27 -24 2 66 4 13 39 51 40 -10 112 50 34 -79 -12 -52 55 78 40 -54 -48 -2 -61 -11 -41 90 37 87 58 18 -18 -36 4 26 -60 78 79 22 62 -41 21 21 45 -71 127 -27 106 -28 127 -78 -125 -34 -47 -52 -26 19 -6 -35 123 73 -43 -122 1 65 -28 0 -26 19 27 69 -85 -25 87 -6 -74 -3 31 -118 35 -45 -18 37 4 -17 -22 -27 75 -90 -44 -30 27 -77 102 -76 -30 -28 69 99 41 54 22 77 -4 -35 51 -43 -73 31 24 17 52 -27 39 62 -57 11 -87 69 0 -32 60 -40 -102 79 -120 -100 -28 -66 -7 -25 -12 8 -3 -24 5 -19 -65 7 -20 -51 5 -107 74 43 -18 52 -103 -15 -114 -46 125 61 -1 -69 -39 -24 -88 42 -110 -28 -34 55 -125 -121 107 -45 -41 127 5 3 22 -38 103 -86 -38 -68 57 -121 1 48 -105 -35 38 -16 -114 -63 20 -13 -123 -14 48 -65 50 -53 -3 1 -22 -24 -66 10 22 -16 -16 -38 35 -15 -5 -59 126 -20 -120 -40 -13 13 -28 -13 -14 20 120 55 120 -19 105 -17 15 74 -16 -114 16 72 -22 -19 -1 -47 -88 -74 30 -61 -19 -66 116 74 -46 -30 -45 57 26 41 25 -30 -102 -64 -7 -12 -5 -46 33 -81 -41 -70 -51 -19 -19 -35 45 -6 26 14 -1 31 -60 -17 -63 16 -48 -31 31 16 5 -6 19 -27 -27 -11 -51 64 19 -54 16 -46 27 53 49 58 -98 6 -27 65 37 -33 -15 -19 -45 78 -19 -57 12 -33 -63 119 56 -6 0 63 4 51 93 15 29 -41 104 -53 -54 91 28 -83 -77 5 -53 -69 -11 -65 -45 62 -51 11 72 -32 -23 28 -23 13 -23 -72 41 -41 -22 -27 49 56 -12 -31 69 -31 -20 -2 -67 -72 -114 -48 -58 51 -13 16 -46 -17 -74 -5 -11 13 68 -17 13 127 -22 15 2 45 42 67 -108 16 49 -21 -7 5 12 -52 -18 -32 -31 44 57 80 58 -38 -14 -8 -55 -108 -25 -127 13 19 -17 -25 -16 126 20 73 -19 98 22 47 16 34 49 57 -53 126 64 -118 -1 105 39 -5 88 -94 -1 118 83 123 -60 -125 -56 38 109 -4 103 -77 22 112 -87 -127 -9 22 -10 34 -23 79 -50 10 -6 46 47 59 3 80 -108 46 0 31 -121 -6 -109 4 36 39 -12 34 29 76 -32 -3 -118 43 -35 3 31 -35 11 71 78 -9 64 -88 80 -79 14 79 -59 -62 -125 -4 -88 99 -92 -84 35 25 -4 79 -91 -5 -27 -33 -63 -59 7 -74 -21 32 53 59 18 -8 90 -42 -26 90 -17 -13 -20 -59 43 -68 -7 127 -35 91 -49 3 -127 69 126 -27 110 -5 58 33 127 -27 -19 -30 76 36 30 65 -52 -11 -65 -70 59 -19 29 -46 -75 46 -40 3 47 -16 -43 -18 -68 -109 -127 12 30 35 -71 -39 -27 -22 42 -54 -13 -50 125 60 33 -25 -103 -54 61 42 -18 -82 6 31 -86 29 23 32 107 102 102 10 79 -43 17 67 22 -69 -49 -45 39 -21 87 127 26 3 54 -19 82 -29 126 94 109 -102 22 11 27 127 -8 -76 -23 -16 55 -24 38 -57 39 -46 58 -51 -18 -93 -81 28 -117 -26 5 46 -27 -54 -47 45 127 99 11 -81 -10 -28 -107 -34 -3 44 -127 -9 -70 -67 74 -65 -5 -25 -8 -50 -94 23 -34 -29 49 -39 11 -13 77 40 77 -85 -81 -86 30 17 -89 -40 -22 -9 10 86 -57 -77 -99 11 -128 35 -25 -93 37 35 -41 -116 -17 15 -117 -3 13 11 -23 34 4 -27 99 -24 34 -126 -30 -31 56 -63 33 0 -100 -43 -65 32 103 -76 -14 -82 28 -47 29 10 -16 23 8 -21 -61 -1 -59 -34 27 -90 2 40 119 -65 19 12 8 7 -62 -57 -66 -17 -80 -61 6 -23 55 -74 -111 -32 51 -71 -121 57 -23 -128 -12 30 -31 -40 -67 91 -40 14 -37 -121 -13 -98 4 -117 12 -39 -85 30 -78 -36 22 32 -4 -36 45 -7 -54 -26 31 24 -62 -127 -36 75 -28 -61 -5 -61 -11 -82 -119 -8 -104 5 127 -20 -61 -19 -10 -34 118 -9 -9 -19 35 42 -46 -22 -85 43 -9 108 14 -40 126 -13 32 -58 77 -2 -128 38 -19 -80 -4 -57 127 5 -43 25 123 104 -21 57 3 -19 39 -4 43 35 113 32 -24 99 127 29 22 -22 -124 -128 10 -17 2 -68 -76 -12 65 7 42 -75 11 41 -7 -38 -48 -43 -84 98 6 -28 -11 -24 -55 -27 -3 80 -45 2 -17 -54 15 126 26 4 -10 54 12 14 -93 -95 49 15 63 -2 -1 -33 18 1 31 7 72 82 -33 -61 10 52 49 -17 -19 15 74 -32 63 -44 104 69 4 108 -2 -77 -66 -25 -121 15 22 -124 -38 40 -71 11 -38 -48 12 -27 -58 -54 -55 -15 -14 127 -87 14 -90 -110 -125 -112 123 50 -128 -76 -44 48 15 -111 53 62 -11 34 -100 21 -16 12 -52 -39 92 50 96 -52 97 26 126 28 41 29 38 57 -45 76 -81 -30 61 15 54 59 -35 43 -62 -94 -32 121 29 -78 52 73 45 -28 -44 -44 105 45 126 116 -38 -18 -1 -65 69 3 -55 63 66 2 31 54 61 95 -126 51 33 -36 116 50 77 -120 84 23 -7 -39 40 42 7 -4 33 53 103 34 11 -30 -51 -41 41 -13 2 4 -47 -42 93 40 83 9 -47 -46 -73 112 8 48 100 33 -36 -15 -2 -23 26 -37 39 126 32 47 7 -60 65 1 -82 -125 36 -26 -27 38 -36 -113 -18 5 95 17 -12 51 -11 -121 68 35 -86 -54 38 -32 60 107 -69 -16 34 57 71 -58 -101 -89 -42 42 -28 -26 -79 -67 -109 9 35 7 7 32 75 -58 28 127 -7 103 35 127 -64 -40 -68 -20 -9 51 -65 57 33 36 -75 -84 -15 -43 114 -71 31 -19 10 122 93 16 26 54 96 11 -20 -93 19 -113 -63 -34 -13 -49 29 10 26 100 -57 -10 -92 22 -35 34 48 127 -69 59 -40 14 -91 29 10 -12 -46 -127 8 127 125 74 24 -40 43 -53 84 -35 -125 -54 127 127 53 111 123 -22 -6 -127 59 -23 -74 4 -81 -52 -115 121 80 12 -27 37 14 125 20 19 -24 -34 -24 127 -27 41 71 -62 18 -61 11 19 1 -49 -59 -40 -127 -60 -127 127 2 122 57 -128 -128 75 -65 -85 -86 -24 0 42 -124 -32 87 -33 31 45 87 18 -34 100 -127 27 90 -109 -128 -73 -83 -69 119 -115 39 -1 93 -128 -80 -8 -33 -52 -58 -120 11 17 -49 -7 7 -36 -6 127 -58 -125 -27 51 8 -44 94 -20 -9 -77 17 77 32 -38 27 -25 -70 57 -44 29 -38 36 -33 -46 -16 -116 59 -83 -73 55 -75 -93 21 51 1 46 -3 -53 23 -84 63 -57 -52 60 88 -77 -31 -35 2 2 -36 29 -12 98 16 -96 -6 106 31 -78 -23 -11 46 -43 48 44 4 50 11 -38 22 -26 -96 79 -11 -29 -122 -19 -3 -9 27 -60 -60 -49 117 -102 7 -50 -71 8 -16 -47 14 99 -5 68 127 55 74 52 -28 41 -72 -65 28 -5 -101 41 12 -10 -93 -54 -90 49 9 12 -10 83 79 -125 -61 26 -54 -11 -29 -36 -57 -49 -36 -2 18 -32 98 4 -78 -10 -53 -51 -32 11 52 -88 42 127 23 62 30 -42 -84 111 -36 31 -42 126 54 -44 39 -29 8 -55 30 110 -49 -95 20 21 -112 -16 6 -7 2 75 44 -78 18 34 -8 41 54 21 -30 -96 33 61 34 76 7 -6 33 73 7 -26 -97 91 55 49 -27 25 45 69 3 55 -53 -45 62 52 -7 -34 -58 30 -59 17 40 3 12 23 11 39 -33 32 -58 125 71 -30 25 -52 68 10 28 34 10 -97 -14 -51 6 24 -37 -13 -41 -32 -4 -50 18 -3 9 10 -87 -16 69 -25 -82 -32 -25 -127 -73 -28 -13 -87 -49 93 -104 -64 -56 85 25 -9 -23 -79 -112 99 11 52 -7 -16 46 -42 34 -1 -9 -73 -98 -12 48 56 -60 -8 38 -120 -8 47 109 4 -18 -122 -17 -3 -43 -106 -58 -99 52 -39 -43 23 -44 -76 -82 15 -29 -98 -120 19 -56 -111 -23 -29 -48 -55 93 -12 -74 9 -93 -45 -31 -102 -91 0 -24 85 -12 60 -17 119 115 60 -85 -64 5 -74 -97 -32 71 -106 38 19 -67 -106 55 -67 -30 -66 39 -67 -65 15 -7 8 60 -10 -43 -53 -56 -56 6 -33 21 -14 14 -100 62 -46 11 55 -42 108 44 42 15 -11 3 28 87 48 77 -24 76 45 7 -18 18 -15 -12 -20 -11 -14 58 -31 70 50 -39 24 98 -13 -36 109 59 -50 -51 1 -27 -40 -33 39 -30 11 16 -21 -13 -19 -9 -44 -44 -61 -52 -60 109 12 -30 13 -27 7 18 -18 49 17 -52 14 -45 39 -83 22 35 -45 38 14 -24 7 -26 -39 79 -50 -68 -26 -5 35 -4 0 -23 -16 22 119 -30 36 -33 -8 44 0 -65 -5 -46 -68 24 48 42 -35 -53 -12 -24 62 8 15 -26 -38 -79 -29 -93 26 35 51 -12 -57 54 39 -17 -43 17 -38 40 95 63 13 10 -126 -21 1 -25 -15 23 11 30 -7 56 -80 53 24 48 69 50 66 6 13 1 46 55 70 -26 11 23 97 -39 35 21 -72 -88 28 -34 -24 55 17 -15 -23 -32 -9 16 -4 -10 41 122 125 76 121 -27 89 69 17 -18 102 -73 -30 51 103 -21 127 -102 49 33 41 -80 67 9 125 -97 -3 52 20 -74 -35 44 -66 63 -53 126 46 -48 -67 84 23 -29 -59 -54 62 47 31 26 20 -24 -5 125 62 39 39 96 11 12 122 62 -19 60 -113 4 79 1 100 62 21 -93 -112 12 39 -126 4 100 -103 29 98 -30 65 5 103 71 26 120 -128 -68 101 10 -69 -57 62 -51 -34 -45 -128 5 -18 -70 50 87 1 3 84 29 90 -126 55 100 21 -22 4 -124 -52 -17 -46 84 18 10 -44 -1 61 -81 -15 40 -35 95 -13 107 33 102 67 -92 -58 18 -99 32 -48 84 -52 10 12 -43 -57 47 -30 -79 48 -42 -115 -54 24 -55 -46 52 -76 -78 -96 -86 6 36 -80 -72 -32 -68 30 -39 76 -59 11 -10 21 79 -22 -30 -21 -33 -49 -45 -50 88 36 -43 97 108 66 -9 -44 55 41 -76 -5 19 -44 -56 -55 -82 90 -93 49 -31 -21 -127 -49 -72 -54 -126 -125 45 -27 -11 -26 -82 -28 -86 123 6 19 -5 -54 -21 59 127 -5 86 58 91 -127 -106 -70 43 32 -120 -32 -16 105 -75 127 -78 -21 127 -32 -63 102 49 10 4 -45 77 77 -58 124 97 14 56 20 44 8 -57 4 60 -32 -19 -8 -102 32 38 106 46 -14 29 24 49 -78 -30 -47 -42 38 64 -22 -26 -80 79 -11 32 21 24 -116 -77 67 46 67 -91 -76 -5 41 -36 -44 -121 116 20 73 81 -3 26 -68 38 42 52 118 -27 -47 -31 -30 49 76 45 58 39 49 -65 -36 -62 -23 106 -12 55 3 34 -41 -50 -123 -41 50 -10 -102 84 -41 107 93 18 -22 121 64 58 22 -96 13 114 -39 87 -19 113 124 -39 53 -41 -28 24 -4 -59 126 45 -25 -40 48 45 -81 70 53 -8 127 88 -64 51 14 76 -67 9 -93 8 24 -20 32 -38 68 -88 -16 -21 -75 -120 6 63 60 13 69 126 34 -64 -5 -18 37 -50 -117 1 -4 11 -84 -34 52 -24 8 -14 21 -11 -64 -46 -90 -79 -3 34 -33 -38 23 -1 -3 -57 -119 -20 48 -14 58 -79 52 -84 -40 47 88 103 -61 7 -36 -8 31 -27 -52 -18 -53 20 54 -68 -8 -32 -9 34 -57 -4 -118 -32 -49 11 42 -70 -64 -11 57 -12 -37 24 46 -56 -56 -101 54 121 -47 111 12 -49 -31 -44 56 -43 15 -45 62 -51 -17 -25 67 -46 -65 -8 37 -84 -15 -67 3 -61 83 9 18 59 -13 35 38 94 2 104 75 78 90 44 29 97 62 -93 -125 -19 -33 1 -113 -23 126 -26 31 -58 -27 56 -76 41 119 13 -88 52 66 -86 27 -64 21 7 -41 17 -23 92 -100 -94 26 -69 15 -49 -41 -78 -17 53 84 44 17 -36 24 -34 11 72 -24 -5 70 14 22 22 -31 8 -123 60 -88 -18 -33 -108 -65 -107 121 -69 43 -122 80 -115 -44 -120 82 5 -80 -46 -64 -30 -68 -54 123 -98 -124 -12 -90 -87 -74 122 -41 -92 -66 22 49 -86 -72 43 24 60 84 -73 -88 -2 -66 -22 -36 -40 -45 -86 56 -12 15 40 35 42 66 89 7 -54 -59 -23 -42 -125 -41 38 21 -71 -10 -15 -91 -127 -47 -79 7 -19 43 10 -95 34 57 59 -79 -51 -7 -36 -66 42 54 40 6 -3 39 57 -42 -123 23 -20 9 35 111 -34 29 -40 -83 -126 5 17 63 48 -43 46 65 -84 -77 80 1 57 -119 -31 -27 -58 -73 -14 41 -37 16 7 45 -60 96 4 28 6 -38 46 -53 2 20 -26 -2 -3 -41 -42 65 27 20 -112 -43 -48 -10 87 -104 67 45 -39 2 -39 5 -44 -9 77 -22 -2 52 -58 -87 25 -24 20 -12 -103 -28 -77 -54 -52 20 58 -34 4 16 -21 97 -4 17 93 5 7 -39 -20 -126 -88 46 -61 121 -18 -35 13 -51 54 2 -31 -32 -45 25 -101 -120 -58 43 -128 -118 23 -67 -83 79 -59 -47 41 30 108 60 17 3 -48 82 2 31 -124 -8 119 -87 40 -60 -2 -1 -71 -64 -77 37 9 113 -1 -6 69 -11 -86 35 28 -1 28 56 116 30 41 101 56 20 53 125 112 9 2 20 6 45 7 -32 -120 62 120 124 -108 60 67 -86 -59 -1 103 -47 -108 22 -10 29 105 60 -26 62 33 -48 -86 59 84 -54 -121 -46 -127 -31 28 -34 -81 16 -51 4 127 -66 -47 60 -46 -26 108 73 -118 -127 -87 -31 66 -19 46 42 40 -27 -71 -25 62 -77 52 -118 -1 82 -60 -69 61 -41 -80 -126 54 -40 32 -32 2 -5 -37 -33 -26 -35 77 76 -13 0 -11 -39 -3 -92 72 -127 13 17 -41 -27 20 -66 6 20 39 -21 -119 41 -41 -23 -3 10 3 -127 -23 25 -67 1 -15 -22 -7 15 24 4 -32 -34 10 44 70 40 -62 -58 -51 -86 -25 -118 70 5 9 -21 -93 -45 -70 5 -49 -56 49 -67 -27 -38 -123 22 -5 -59 35 45 -88 -10 20 33 9 -17 43 -38 19 59 -16 20 23 -13 9 30 -19 -74 -62 20 21 15 -66 80 29 -14 39 67 -8 -2 26 13 10 -13 -17 -26 -38 10 10 -9 -34 -57 -33 -59 40 -34 61 -63 52 -11 77 -17 37 34 60 -13 69 -35 -20 70 -109 -22 9 62 -31 -57 111 68 -38 23 -104 -59 -26 -3 41 -25 -42 -39 -86 -71 -8 -71 -87 -122 -65 9 127 -74 -16 -3 -25 59 15 -103 -17 5 11 -106 58 39 1 54 32 -29 102 -52 127 -20 8 -6 -14 44 52 14 -37 -73 -68 -1 -8 -44 17 -13 -43 -47 -12 -10 -66 -55 -66 -13 -10 39 -28 70 -7 21 -37 -115 -22 -5 -88 -72 -6 5 106 -14 46 6 -57 -128 -50 6 -17 40 81 -1 -65 -2 37 90 91 64 64 65 30 92 39 -49 61 -14 -39 14 127 49 -30 17 123 124 107 73 -24 -89 60 124 63 114 50 -17 81 28 39 -120 55 75 82 -30 64 -12 1 65 -32 51 38 82 -24 2 43 16 85 -1 26 -19 127 2 35 -35 50 58 -66 75 107 66 -9 38 -42 20 56 43 41 77 26 -20 10 -67 -3 15 -30 -22 7 97 51 39 -21 78 58 -52 -55 -9 5 110 4 54 93 119 -40 26 104 22 19 -50 18 14 -13 -78 41 -42 -27 -10 -56 1 -31 -14 -117 82 55 -62 -57 -60 -53 -14 0 116 68 -33 73 -89 -122 1 -24 21 -61 103 23 -109 45 29 -1 -47 -36 15 -17 -12 -40 18 -6 -70 -20 40 106 -22 28 -45 -20 35 -67 -15 -83 53 43 -2 -25 2 -39 15 0 45 51 52 -46 65 -99 -9 -82 15 -69 -19 -16 32 52 -36 64 -51 -37 16 22 23 6 16 17 -23 1 -24 34 127 1 57 22 -39 44 -49 120 -33 -70 -34 25 59 52 -23 -128 2 -4 17 -6 56 24 40 -16 20 -68 -20 -13 12 -69 126 60 4 85 1 -54 -49 -74 90 -28 17 4 -53 -81 -90 -123 26 33 53 26 -78 -12 84 36 8 -29 3 24 26 19 12 109 11 -14 68 1 127 -14 -28 21 -33 -34 -35 23 36 -70 52 97 21 20 -22 127 -60 -8 -35 -21 51 51 -4 123 -32 31 -127 73 -23 -90 72 116 -96 -111 28 73 20 41 127 33 -58 53 34 -30 -11 -12 -20 -47 -39 -38 74 -90 -128 -20 48 -6 26 47 37 27 -37 -89 -105 14 -22 -9 -52 -19 -5 -43 85 -72 -80 69 90 21 -26 57 -1 71 68 46 -41 -60 46 -125 91 -66 -40 -17 59 19 80 32 -12 -124 -7 21 -79 -117 -56 -3 123 -12 -45 -82 -59 15 -54 -109 104 -3 -78 -26 -35 127 -60 6 -20 -28 -66 46 -23 1 43 1 -86 -2 -25 -31 -45 -27 99 -20 -25 96 6 -7 22 35 54 -51 65 126 -39 -119 102 -38 -17 -10 -29 -83 94 34 23 -9 60 -23 -104 99 56 35 -89 18 44 -70 7 11 -5 107 0 68 106 10 -5 53 122 71 -1 4 -39 -119 -43 -29 -32 -12 14 6 -50 -60 -39 29 20 6 -51 26 -23 84 68 20 106 -127 127 58 -14 -126 -50 -52 49 34 -15 -43 -72 17 25 59 -61 -61 -110 19 -4 -21 6 -101 -39 -81 -12 125 100 43 -3 14 -128 44 -102 41 25 14 -21 48 60 44 -9 -2 -11 -121 21 56 0 -51 77 -2 -10 0 10 -36 -39 -15 -3 16 97 -83 102 -89 124 0 -25 24 -127 5 -60 -40 45 -20 13 -1 -90 -10 33 100 122 34 -128 -37 32 -56 -35 127 83 -19 40 28 -8 26 101 56 -6 2 -81 -22 -47 -26 47 -30 16 -43 27 28 16 45 -20 -74 -60 -40 -34 -25 -33 -40 -24 -49 49 75 -76 50 -34 15 -88 -120 48 -18 -21 -50 -23 -29 18 14 -31 6 -81 -100 124 -52 -125 -57 -87 -54 -81 -19 -124 106 28 83 30 -119 -46 76 -115 23 -45 -91 -18 73 16 -48 76 -32 10 7 39 -17 -126 61 103 66 14 -114 54 -18 33 20 -33 38 -125 -28 55 -74 74 -3 0 -30 -45 -88 59 62 127 -127 -17 -72 40 107 -72 10 -109 -117 -87 -123 -36 7 5 -43 -21 -125 -41 -57 54 -44 10 -19 18 -97 -121 -33 38 -37 -18 99 8 -48 -120 -72 46 -69 -44 -51 -124 18 -99 24 3 109 -87 -24 31 -125 -62 -9 61 -10 -28 -48 -78 -48 -15 10 -47 20 62 -122 83 -73 -34 77 -66 92 -100 61 18 16 37 122 -109 127 35 49 -12 -6 11 40 -8 77 0 -32 79 52 120 20 -89 -119 -73 69 -78 -69 12 1 -32 37 -109 61 -64 -27 16 -77 -7 -126 -36 -31 31 -83 -6 -16 61 18 -56 9 -33 -43 -70 88 48 11 81 13 27 -29 -95 -22 50 15 -68 -9 -65 -20 109 13 -6 -56 4 57 -44 20 39 15 97 29 30 -3 -58 30 -67 85 -45 -18 113 -31 -8 -25 27 -22 -10 17 -2 49 2 -50 82 -8 -29 109 72 -60 45 34 42 44 102 -68 0 41 -35 -70 -51 -26 36 -12 13 14 -27 66 87 -30 -18 48 1 -20 -10 0 60 89 -50 -41 14 -1 33 -44 46 27 47 127 -99 125 -17 -91 37 -41 127 120 73 64 30 2 16 -31 125 -105 -67 51 89 -33 23 61 8 -77 -122 37 39 -18 -20 27 56 14 118 44 8 39 -45 127 100 -84 30 97 -17 50 -39 127 118 -5 36 103 127 -9 -100 103 42 -5 -52 -36 38 -20 41 1 -70 28 51 25 127 17 -15 -88 -66 23 95 16 -105 -23 -54 47 -23 86 -7 124 -56 33 23 -64 -23 20 -47 1 42 -25 9 14 72 -69 -58 75 -53 -128 -37 -4 -23 -46 53 50 45 -65 -22 -67 29 -86 74 24 -56 57 5 7 -99 -32 -2 -27 -28 -25 7 -45 26 -25 -10 -31 -44 24 -50 1 -2 16 22 -98 -35 -47 1 20 -97 3 -31 -14 42 31 -18 -12 34 15 28 -82 -18 34 38 70 -4 3 -38 10 29 -28 73 16 -25 12 -18 92 -47 18 -3 41 22 -6 -60 -22 -25 -59 43 -1 -103 -82 -39 -17 40 3 48 13 0 -41 13 -77 48 -45 46 -25 19 -13 -16 -89 1 -32 -7 -25 -47 -43 -6 -51 32 12 80 52 -48 -9 -47 9 1 18 29 11 -45 -30 15 70 105 72 -28 -39 7 -13 -69 13 42 -6 -12 7 -14 -74 23 -73 -13 7 -22 10 8 -5 -5 -26 -26 -2 0 37 -125 -55 -30 35 67 43 -29 -25 -2 -46 -124 -4 22 -110 -11 79 -31 -15 -38 9 69 -27 -53 -34 5 95 11 -52 -25 -28 -4 -35 47 2 -29 39 -61 -98 -67 -122 -59 -8 65 -110 45 -63 -9 41 76 -48 26 -50 -47 13 112 -88 -26 -76 -32 -43 -2 64 2 -21 31 -20 -62 -42 -70 127 -98 48 -66 -77 7 13 -49 -31 -104 82 -58 -7 -56 65 86 7 -80 88 43 -9 41 -24 -64 -104 -34 24 -5 22 -67 -9 38 -126 -2 -64 -76 45 -24 -4 -72 -111 -29 53 -37 127 -36 54 -44 -12 1 -68 -14 -31 -74 -16 -39 -15 -12 127 46 -48 30 15 -46 -27 -76 -19 11 -44 92 66 99 22 -98 13 32 -96 22 7 -41 34 -56 -53 -42 8 -13 -12 25 -63 34 -21 86 -89 -43 -18 -31 6 97 53 18 28 21 8 17 -67 -61 9 56 -34 -37 73 -7 -38 9 32 19 36 0 39 4 25 -14 110 48 13 -4 10 121 32 54 -3 -38 -18 -12 33 -15 34 -1 27 6 -24 -88 27 67 -70 -15 -15 9 21 -84 -128 25 1 -5 -8 -14 -82 22 -26 37 -6 23 18 47 -21 -15 -31 -16 11 -34 -42 16 -77 47 -41 -27 -27 56 68 -99 14 -7 25 -66 5 8 -40 25 26 -89 11 62 55 123 15 -56 12 -69 -58 13 -61 28 -14 23 -12 42 -24 -50 -6 22 0 2 108 -6 -85 101 13 36 22 7 -20 -53 -26 -33 -66 -47 -7 -18 -44 -43 -20 1 -51 39 3 -73 4 -32 9 -26 63 -16 -75 1 3 35 82 -22 53 41 -69 85 -76 -47 -20 124 85 120 78 77 104 -58 29 -10 -58 -16 -127 -6 42 95 65 20 68 -30 57 -15 72 124 82 68 72 -22 -82 74 -54 13 -33 44 18 121 -15 88 108 45 84 -5 -46 71 29 -13 72 -69 -26 -4 -82 86 19 127 42 9 6 19 -9 24 -34 32 106 28 43 44 37 65 55 81 26 39 -81 28 81 -15 -4 31 -59 53 122 82 97 2 6 -47 -46 31 71 -26 -27 -19 -5 52 32 40 9 24 35 -8 -16 -14 -47 -35 49 66 -39 -92 127 38 16 -1 -97 -60 -39 -99 -69 -35 -49 3 24 70 3 3 -19 -60 -17 88 51 -58 45 -10 33 41 1 -50 86 32 -35 72 2 16 7 14 2 38 65 28 105 54 9 22 33 12 48 -21 -46 23 27 -18 10 -1 5 -9 22 -25 -56 -86 23 -18 43 -77 9 -54 23 -6 -39 37 -90 -78 -7 -27 -13 31 42 53 -124 3 -49 -28 68 93 25 -13 0 13 -5 -33 -55 18 -54 -2 13 -71 73 -79 2 -6 33 33 60 -77 -114 5 -42 60 34 38 5 -50 54 -29 -39 -109 54 -32 -19 -45 13 55 17 88 -60 70 74 57 -51 -42 -15 -84 24 -17 5 3 35 -34 -15 26 58 -94 23 -4 -56 2 -2 -122 1 -12 -37 -2 11 -24 112 15 67 -54 1 2 -49 89 4 4 -17 -39 -29 29 -27 -19 -38 -6 -35 -96 40 -2 49 -72 46 16 44 -106 1 -39 -65 96 0 -73 3 -59 -66 -73 26 -124 37 -30 84 -102 15 91 7 -61 -28 -13 29 101 -123 8 63 88 3 29 -21 72 -64 -118 -42 -16 -67 24 -24 -22 0 69 -70 100 -79 51 106 -76 101 107 56 60 -58 -44 -23 -2 90 -51 23 -116 -116 -125 60 -10 -100 -17 23 -3 -39 8 -13 26 -127 -23 -6 -42 2 -77 27 -81 -78 -14 -97 -9 -111 7 20 60 44 -106 69 125 3 46 81 61 -2 5 92 0 91 -32 -58 -6 56 -51 -39 -34 14 57 33 -23 6 99 -65 35 -31 23 -11 -128 -38 30 -33 52 -16 -55 -21 -13 49 -28 5 71 -2 -30 92 2 -78 24 -2 30 -7 -21 -33 -6 -61 13 77 22 123 -27 30 85 20 61 -8 23 42 65 -41 38 -25 1 80 -77 15 -47 34 59 125 -40 -105 2 21 9 38 -10 1 -2 -23 5 122 -3 -65 30 55 -20 96 46 -46 127 106 -16 -13 127 38 -31 49 33 83 -2 -65 59 56 -55 -48 -28 -36 -26 -3 -81 44 64 65 22 -67 -6 40 -125 1 -48 -56 -87 -87 26 -31 -57 23 21 48 -13 -45 59 -66 65 -63 -24 -15 30 -50 39 -127 32 -128 101 79 29 13 -68 -95 -32 -93 64 71 32 -44 111 40 71 -16 -32 117 53 -89 -13 12 -108 76 -80 -21 15 10 -116 -10 -72 92 40 15 -11 20 52 5 82 -68 -15 -19 -79 58 -32 -43 -120 -127 62 33 -9 -115 -93 -127 9 -101 112 -106 29 30 2 126 29 49 126 -125 -115 -62 -2 -7 28 -4 127 -126 3 29 8 -18 -128 116 -24 -110 66 8 -126 -64 -122 54 -65 -109 -33 106 32 48 -122 -10 -31 124 -62 -52 -106 -127 84 103 -127 127 -81 10 -3 -53 42 -62 -16 -41 -119 -80 18 -41 -14 28 -71 -10 79 98 -75 84 -31 -53 -128 -62 -19 33 108 62 -27 -51 24 -57 -16 81 5 -73 -12 19 -102 -118 -112 32 62 0 -82 118 17 10 18 119 -127 61 -125 22 62 -5 14 82 95 -70 -61 22 -10 -22 -86 -127 31 -19 -78 51 125 -33 1 -58 47 -26 74 -124 -82 -1 -102 3 44 -28 86 111 4 26 22 2 91 75 5 6 62 5 19 -89 21 14 -29 -62 50 -35 -72 -4 -79 -9 8 43 43 70 -1 -25 -85 25 72 24 17 6 -58 29 78 95 -101 24 17 18 -85 -102 116 -127 -26 -26 23 -3 61 33 -51 63 22 54 53 -121 29 78 -29 -67 71 106 -41 93 -94 -65 83 3 127 -63 107 -125 8 112 11 29 127 -116 -12 -124 -68 100 126 -34 80 -61 -108 -22 93 -33 -1 69 -68 44 -19 127 -11 -58 -117 -66 127 0 -118 -79 -125 -53 -72 -105 -18 -24 36 -11 -76 112 -65 -122 -31 51 10 27 -47 -127 49 127 57 -82 -13 34 -27 -3 91 62 9 -26 13 20 -34 40 35 -11 -20 57 -56 -88 73 -19 36 -52 -18 22 -39 56 47 23 82 57 38 26 69 -17 54 -48 15 68 -22 1 -10 39 113 -10 92 7 127 -57 16 -15 39 63 55 -33 9 44 -108 -14 101 108 -41 -51 -47 11 -30 -62 47 86 -36 -15 -41 -22 88 -32 -12 -70 -13 -8 -42 33 6 -12 -16 103 127 6 25 -103 7 65 -50 -18 -82 9 -60 26 127 22 69 73 42 83 23 55 -34 3 35 32 57 53 15 -108 95 -93 -85 12 -10 -13 -36 -35 19 6 4 22 40 33 73 89 -66 -1 28 15 99 16 43 -8 44 13 -113 13 -127 -110 -60 21 -17 31 94 42 6 -111 -37 76 76 29 29 -80 -42 -65 27 83 -5 69 38 37 62 -52 13 -34 29 71 -49 -4 44 -4 -53 65 -44 44 -46 98 48 108 1 -42 -45 -4 8 4 37 35 32 -41 -13 94 -59 -8 -83 -15 -26 11 -43 30 12 86 -3 106 12 62 -44 7 -68 -22 111 -27 -33 -9 -65 -95 91 -31 -23 21 -84 20 -14 65 22 15 2 -17 -23 19 0 -71 -66 -4 -72 -39 74 90 8 -17 5 32 -52 -80 91 35 15 -22 111 13 47 -73 -79 -33 4 28 -36 56 38 -2 -7 -70 76 56 63 11 47 -5 72 -72 -50 -5 -19 27 -7 -39 53 47 77 36 -38 67 -67 51 -30 -44 114 23 -2 -23 -37 -4 -81 20 -28 5 115 -83 -12 79 -4 6 50 26 67 61 70 76 23 61 -19 37 8 -92 42 -16 -20 -79 -63 105 32 -89 -29 -51 48 -63 -114 85 118 -53 -5 19 -68 -7 -38 27 82 29 42 78 22 -29 5 -9 -8 83 -45 19 54 51 -22 13 -50 -87 -51 44 -88 -37 -8 -34 53 -34 36 47 -1 20 49 -14 -93 56 52 28 15 15 43 65 15 -21 -3 14 -11 -50 64 34 -44 -10 -121 7 -82 37 24 7 -67 -96 -7 42 38 40 122 4 -5 -27 -33 35 29 -64 -59 38 -35 7 -19 -42 62 -49 -53 63 61 8 4 -33 -15 122 7 50 -40 26 27 40 -9 -43 76 24 -37 -61 20 101 74 -48 7 23 -31 82 40 22 28 -16 44 -51 -76 -73 40 -52 70 -2 67 -69 -19 -29 27 25 43 -1 7 33 -62 -50 -6 -12 9 -38 9 -14 24 -73 27 -47 49 -12 53 40 -7 100 -123 -50 10 -25 1 26 -37 -12 73 28 39 -20 -74 15 -18 -1 49 -25 -53 -24 -48 45 103 -18 36 20 19 -59 27 12 -3 -56 -22 -42 -108 101 -23 -48 44 -110 29 -30 34 120 95 -79 -33 44 81 46 -68 22 -73 69 18 -21 -40 -2 -2 -72 -8 -79 -21 18 -43 -28 -101 9 6 -20 37 13 39 61 46 60 -4 -2 50 15 -18 19 8 36 100 -27 2 -74 127 -36 57 -61 28 33 18 7 -87 -126 -79 -126 -95 35 36 -80 -85 25 -66 49 9 -113 44 -42 -17 84 -54 23 -15 72 -14 -14 -13 -61 -4 30 4 -23 68 14 -86 -91 17 -52 5 12 -5 -40 -15 14 -37 -42 -13 10 -28 -27 28 26 37 0 94 -127 1 34 -59 -78 55 -82 -60 -50 -86 -27 -91 -97 45 -6 -58 -1 -75 -80 -74 68 -27 37 29 65 -50 -6 26 12 -8 -11 17 -27 -12 -73 16 -58 -23 -76 21 -20 31 -71 30 -10 27 -10 -73 11 -32 -35 -27 19 5 38 2 -11 -10 -20 6 -27 26 -56 -20 61 -35 30 -8 -35 26 46 31 -16 -18 14 48 27 20 34 -9 79 -36 -22 -10 83 -6 -4 -11 17 -4 55 -18 -1 52 -26 60 -7 -11 1 -30 74 -6 -27 -4 -19 36 16 -10 13 4 -75 -4 -27 45 -37 -16 55 28 52 30 -30 -62 -50 45 -27 0 37 24 -13 -32 18 50 5 22 -12 -9 13 -3 23 -82 -33 11 62 33 -17 -84 19 -22 95 89 12 -15 -24 -25 75 118 -32 65 30 51 73 22 22 15 17 -74 -5 57 11 -50 -60 -33 -85 -32 -10 -28 -51 -51 -100 10 -21 43 37 63 -96 38 -14 30 48 -78 -17 -74 35 77 -51 11 -23 18 -61 24 -123 -49 66 -8 -15 -38 -18 -14 -16 125 -55 -12 33 -71 43 34 46 -12 -53 50 13 -7 33 -18 -6 14 35 42 -108 -35 72 -41 -21 -48 18 -5 71 24 66 4 125 -107 82 69 111 -56 16 127 95 -8 -69 2 -52 78 61 109 -6 123 -84 63 35 117 -24 46 -39 126 120 39 4 -31 -3 36 71 98 -33 92 50 -6 11 91 127 51 -76 -67 -48 -24 125 25 -19 36 35 103 105 30 72 92 4 -126 -48 -42 4 71 -125 -123 56 -25 14 84 -26 25 88 43 -8 86 -95 1 -39 -36 43 68 -45 6 -20 -41 -89 21 83 -15 70 56 22 10 9 -38 38 125 112 34 -5 126 -25 -37 82 -79 24 -36 6 76 127 -69 49 -3 -50 34 8 -88 -20 -114 -51 35 -10 24 -82 -33 13 42 10 72 -95 -21 46 -16 39 46 -51 31 -127 5 -32 -14 -3 72 -75 -20 40 -94 -37 -78 -65 -7 39 -43 2 -19 87 60 -57 -7 43 -124 25 24 -4 -26 54 -47 33 14 -8 11 41 -37 116 -34 -46 120 53 -61 -1 38 34 -72 -15 -112 107 -23 -26 30 0 -106 104 -28 -80 103 -96 11 -68 97 7 54 41 101 0 -84 -24 -92 -35 28 -115 -85 23 -125 -9 127 80 -34 -74 -27 -33 38 103 -16 -48 41 81 -29 127 -60 127 -45 -77 4 13 41 -20 -28 -22 -8 -52 22 17 -12 -21 -92 -31 127 -113 -45 100 29 71 7 -31 50 121 0 3 13 89 -124 39 -4 9 35 -118 -86 -123 -7 -11 109 -126 -90 -29 38 10 -120 -66 -34 22 -39 3 -68 124 13 -24 -64 11 -29 -121 -58 59 5 -42 116 76 -61 -128 -23 -104 19 8 62 -87 7 -54 -21 124 -8 54 40 -15 -7 68 110 84 -23 120 -110 59 18 81 49 50 13 105 4 67 84 10 -62 60 3 52 -53 49 53 -87 28 79 63 52 31 -33 9 111 -59 -66 -32 49 47 -99 34 -38 -29 84 4 19 28 -81 75 -61 -56 -9 43 -15 -9 2 61 23 114 39 65 76 51 16 -2 61 3 -31 127 55 24 -53 23 -126 -29 21 11 -15 -39 -26 -115 19 -67 -33 17 -40 49 -5 -22 -67 58 8 -91 -23 -72 124 47 17 -68 -50 -45 -43 -87 123 18 0 -57 112 -36 -12 121 -111 -30 41 -47 -10 103 27 -35 -94 -70 -15 -102 -18 -51 -50 58 -20 72 101 -42 2 7 -7 87 82 17 99 -94 -114 -32 4 9 -87 -11 -113 17 -28 20 -69 -28 -10 -51 88 66 -16 -47 -45 -78 -62 -34 -14 -100 -7 -27 27 -82 -4 -47 -93 -21 -86 -85 -27 5 95 20 -103 9 -84 -69 -14 24 -97 -4 -25 -14 -15 -111 -17 -30 6 13 -23 26 5 3 25 57 -42 44 -20 43 15 6 80 51 -36 11 76 115 -52 61 -41 -62 -45 -2 79 122 13 -37 -35 -3 -15 -1 22 65 -77 25 65 44 72 41 -32 22 25 -9 -64 -25 -20 -66 -37 -37 -47 65 -50 23 -3 -99 20 44 -8 -49 -61 -30 17 27 -5 17 23 35 -83 52 52 10 55 34 94 59 25 -17 69 -85 29 -19 7 20 25 20 12 -21 -14 30 -75 -77 -69 -88 38 -31 9 31 64 -10 -37 12 -18 -8 -33 -55 42 24 101 25 32 7 101 -27 -109 -42 96 64 -86 -117 76 -80 -77 14 49 81 -79 -54 -24 23 76 1 60 32 12 81 -41 20 -81 -118 9 -6 -113 -80 72 -6 18 15 5 -91 -114 -120 -118 14 -119 84 -20 16 -60 121 -112 -120 37 -48 -2 -120 -13 -102 93 -6 -55 -18 114 -74 -34 103 -23 -54 73 -19 17 64 1 67 118 -49 -26 -47 -23 26 24 43 118 17 103 120 46 12 106 -47 19 -47 9 -42 -20 13 22 111 15 19 -27 107 79 71 46 -77 90 7 34 86 72 18 -107 -15 -91 14 10 -20 -28 -56 33 123 40 55 -87 37 127 35 92 -122 4 -26 62 63 -75 -122 -113 -8 -9 -22 -16 -25 -94 19 -44 -60 45 -117 34 -54 -25 -13 58 -126 -15 -68 126 36 -15 6 -74 -65 3 -68 57 21 81 58 115 43 123 81 -9 -58 17 -64 58 21 -30 -108 -65 16 -128 -45 75 -119 -117 -97 -65 -40 -123 125 127 127 17 68 -16 10 126 30 120 -121 -18 127 80 14 -125 -45 40 -30 -128 -37 -57 -20 59 -117 -70 12 -58 63 -59 -11 -17 27 64 25 -38 9 123 -32 -125 14 -71 127 116 -25 44 124 -47 47 -22 31 -127 113 -112 -117 21 -33 -53 57 47 -95 -39 4 26 32 43 -21 -16 -99 -64 -7 18 -49 -110 -13 68 70 -16 48 -54 14 48 36 121 93 -78 -24 3 9 -37 -19 54 110 -72 -42 -65 6 -90 -56 41 -1 102 40 13 -10 -62 -17 44 -66 -98 79 -51 -16 41 -28 -107 27 77 -1 -128 -120 -6 58 -119 30 -2 25 -68 3 -78 123 -51 54 -70 17 90 -17 -1 -74 39 -106 -42 23 76 -37 31 9 47 -95 -41 34 4 11 -127 9 28 12 20 -48 97 -5 4 5 -10 -71 38 -65 -77 -64 -50 -21 -16 44 6 -21 0 -15 -1 22 -15 107 109 1 114 62 89 61 29 -28 28 -67 -116 -70 -41 22 -51 40 121 42 -7 56 -26 -11 -50 43 -73 85 -110 47 13 67 42 71 -65 32 14 24 -111 55 -7 1 -16 54 127 -20 7 -16 -62 -13 -19 4 56 -20 -8 -12 117 28 9 -49 -38 5 -36 16 39 -65 -27 60 -51 30 -61 31 -24 -22 110 -6 64 -50 4 -33 -5 0 32 -18 -60 -12 14 -60 -33 74 -31 22 44 -29 -49 55 -38 -11 27 -77 4 -41 17 -68 12 27 -51 -126 -20 -3 103 61 -117 -48 28 -49 1 -6 68 23 -30 95 52 -11 -26 -20 -9 -9 -8 12 65 -57 -5 -66 -53 -3 -39 37 -47 120 53 44 20 26 -47 -50 26 -15 -3 26 2 1 -6 -80 98 26 -82 32 17 -24 38 8 -50 81 -45 16 26 8 -9 63 -43 53 -8 19 104 49 114 -4 123 -19 29 -7 6 17 39 111 -47 102 -56 16 67 19 -35 59 -16 62 117 -69 -45 31 -9 -39 27 116 -24 119 -65 -83 121 10 112 31 -69 22 -66 -48 66 3 -118 -122 -104 95 -105 -17 13 22 25 -60 55 29 -50 -17 -2 109 -19 59 106 12 -43 -17 34 -89 46 36 -43 28 42 21 30 -8 25 103 103 3 37 114 53 -33 1 -7 -28 -38 11 -22 71 -57 -98 90 83 -63 67 87 -21 -40 -12 -34 23 61 10 17 44 -13 2 78 -61 7 -43 74 -35 -51 30 -13 41 -17 -73 -27 -13 3 38 -115 -19 4 -55 -68 -47 -4 -29 83 41 -5 23 -3 -20 127 -58 17 88 13 -37 -10 -32 66 26 -8 -19 -42 -3 -50 82 45 31 -93 63 -66 16 82 31 30 -29 78 36 -55 -24 12 -40 -35 -3 -8 -1 -51 -1 60 -1 -38 49 -8 -40 65 -74 45 -14 34 15 -8 -49 31 122 -24 15 -36 -84 -20 -22 -91 -11 41 -22 -74 -43 -33 30 -71 40 -29 -20 -18 97 -114 -58 -76 -25 61 47 15 52 18 -17 37 -39 -63 13 85 -105 23 -13 -71 50 16 -25 0 -2 6 33 -28 3 -1 -23 -64 39 -10 109 78 -26 65 -7 115 24 -99 8 -87 -19 50 -75 -43 -37 126 94 75 58 -6 9 -63 31 -19 39 2 -38 55 -36 -17 -6 51 35 21 18 -41 22 74 -6 124 120 45 79 72 76 43 -10 25 112 51 -59 6 106 117 86 9 44 -26 40 26 -57 39 19 -38 49 -8 31 -53 58 94 7 85 19 121 30 56 85 -10 -33 22 115 127 8 -89 46 68 -23 -5 -29 62 -5 1 17 26 49 -2 6 84 -56 111 -9 125 -27 -25 113 -46 84 102 41 -7 45 -8 126 127 -13 29 -68 -58 53 66 100 42 116 58 109 -52 125 -73 -11 46 3 27 -43 -27 -13 -8 38 114 1 -54 -23 19 -15 3 60 6 -4 56 -61 83 20 7 -37 -7 8 7 41 32 -70 1 -21 -3 -27 -13 -20 38 7 -23 110 36 -19 -77 15 -67 -63 -38 59 -46 -75 37 42 -6 114 -106 111 -43 9 -58 -42 -46 50 -42 14 -81 37 43 -56 46 4 33 -58 -13 -104 -33 33 79 -32 -28 -61 119 25 -10 91 -5 -26 1 -25 22 67 53 -12 -50 68 29 -36 -37 -41 -11 52 58 -32 -40 -48 -124 127 18 -104 62 94 39 -74 -18 -15 -16 -128 -78 33 -64 60 75 -17 -32 -115 33 35 64 -64 20 -71 -38 10 15 49 -45 23 -31 -122 -126 32 -5 -40 -29 -31 117 -22 123 31 52 46 -13 27 11 82 -55 -50 6 93 126 16 39 127 36 7 -20 4 -42 -20 -95 61 -80 -3 119 -14 87 47 -69 95 25 48 13 101 -65 -17 -25 -38 106 53 -86 62 42 -56 -85 -73 31 -92 84 -47 5 -19 35 -52 83 58 51 63 -76 8 65 37 -2 0 17 -56 98 -52 -75 -36 -83 16 110 -80 13 -85 -4 -82 -84 -13 -33 -19 92 5 0 -84 84 35 12 25 7 14 35 -126 9 -27 -42 -53 -80 -21 28 36 17 11 1 -4 12 1 -60 -83 36 -50 -6 -18 -92 11 3 60 -48 34 -23 53 -56 90 82 29 96 -23 -101 -17 85 -58 -38 -6 94 23 -36 -4 -26 42 11 32 51 15 -2 -50 -68 -33 50 21 27 -13 53 -37 14 1 37 -42 -3 22 18 -9 29 -12 5 35 -90 -55 40 46 107 35 72 44 41 -68 4 19 6 -41 29 -84 -5 15 15 -16 5 -28 -16 48 -2 -40 -54 -121 -8 22 -13 -37 -21 13 -36 -5 -99 11 20 -64 24 -112 -13 -43 32 28 36 58 -28 63 32 -10 37 -11 -7 -51 39 -53 0 87 24 -21 -16 -5 -38 10 -4 21 -23 45 25 26 11 120 -3 76 44 61 27 -28 -30 -40 -102 51 29 35 16 5 -29 31 61 -4 23 -28 -31 -27 -14 -35 -3 -20 -49 -101 5 23 3 -54 14 35 -10 -90 60 91 20 -123 -127 73 33 -9 -64 61 -15 -5 17 45 34 10 -81 1 27 -43 -47 35 -32 -34 6 -68 11 -21 -36 63 -25 66 -96 74 15 5 64 36 -5 -1 -86 52 60 8 6 -73 34 30 3 38 -5 -21 27 -8 86 51 47 78 6 64 -100 120 86 -23 47 3 -3 -21 15 -22 36 -93 -12 28 70 -45 42 -54 24 13 -67 127 65 8 -123 -58 -65 7 1 118 66 115 -6 52 -14 109 46 127 127 17 4 4 -77 25 -52 127 -93 -34 116 81 15 127 -42 109 120 33 -81 -46 123 29 85 58 14 103 -14 26 82 -25 51 -114 -79 50 -1 69 91 31 24 -4 17 -45 64 -65 26 49 -56 -26 -67 -16 -121 123 -25 -28 -28 -69 -21 -65 -37 119 -17 -21 -19 -86 11 22 42 36 113 15 -52 24 -26 -95 37 89 24 -62 -67 -42 -45 8 -9 -58 -19 8 -52 27 -49 -40 37 -19 -57 0 4 83 10 -33 13 -8 12 -125 -59 17 13 -48 -55 46 82 -72 72 64 1 5 -17 5 -48 -89 -10 0 44 -10 -72 20 -30 -104 -25 -56 -46 114 -99 16 -63 -21 44 55 -11 111 11 -99 -29 51 -28 6 4 -3 16 65 86 54 28 -21 -14 -30 -77 113 -7 -46 -56 -69 -70 -100 -47 -69 -64 53 9 114 1 15 -4 -71 -10 -28 -43 40 -27 -1 -19 -54 124 44 -78 69 -113 -80 -69 18 -62 97 -97 56 4 49 4 81 -123 -23 122 59 -79 -34 24 -57 106 -6 91 -98 -10 81 -91 -30 2 14 58 -126 -86 2 -104 -3 44 -39 74 32 -48 -73 -113 6 -27 -81 51 81 60 -27 -73 -12 17 102 -60 76 32 3 -51 -23 87 -15 32 27 -68 -52 -126 -93 46 43 59 51 -3 -5 -40 53 -6 106 17 35 127 68 -80 -39 36 115 71 70 125 23 103 6 -1 41 -50 24 -24 12 59 0 23 -59 -16 29 -28 48 70 65 -47 33 -42 46 53 -50 121 32 51 -7 47 -70 -10 35 -68 97 20 34 62 77 -6 -122 1 33 33 26 84 -74 57 -36 63 -6 -37 31 101 29 -31 16 -87 28 4 26 80 42 38 -42 2 -42 9 19 -103 33 -64 -14 36 -71 -31 64 -31 -33 -34 38 3 -20 41 -77 -20 24 7 -25 -15 56 -88 19 -14 -56 -22 53 21 -83 52 -43 -27 14 72 -67 80 -1 74 63 65 4 58 -65 16 -46 -55 -30 85 -92 -25 28 -60 20 -6 97 -94 -11 9 51 -3 -13 -21 -71 4 69 -25 31 -21 58 41 -128 -30 -18 -93 57 45 -88 27 -77 6 75 51 93 -22 -84 25 -40 8 -44 -52 76 -50 19 79 40 -49 4 50 -103 -43 -31 -12 -57 70 46 23 29 125 1 -13 6 -11 39 35 -88 64 -71 -49 -97 9 53 -20 -11 11 121 51 46 -24 -33 10 16 76 80 -21 42 8 -81 -60 39 -3 -53 -112 53 12 -9 73 27 85 57 43 46 118 2 29 -58 -55 -11 -51 99 98 6 -54 12 -63 127 1 8 -121 -14 -114 26 31 5 -42 -11 -20 -79 -6 -16 21 3 42 -23 -1 14 21 -43 -107 -80 44 104 -49 16 -91 -7 22 -55 45 0 -90 125 67 -50 42 16 -76 93 -92 -44 30 121 15 122 117 26 25 33 -11 -52 122 -45 -34 113 16 -7 56 -62 21 3 80 40 40 -76 110 74 -7 7 104 81 116 68 -7 13 -61 -80 -68 -124 -43 -126 -18 12 -70 51 39 -40 -39 -44 37 -106 -32 65 -64 17 58 13 -5 -37 -13 35 44 75 77 -64 8 40 49 -123 -89 100 -44 31 115 7 14 -2 34 -1 71 75 32 -34 25 19 -10 43 -43 -128 -83 -40 -14 68 49 76 -78 -10 -83 -65 -39 -37 47 76 107 120 82 19 -55 -49 21 2 3 56 57 3 75 42 -23 -4 -5 21 -3 -17 3 24 -35 -32 -10 -125 37 75 6 -75 -2 15 -75 45 -85 125 98 25 68 30 -9 55 74 47 18 35 42 23 -4 48 -113 -115 38 78 88 -36 75 -71 37 24 -8 6 119 66 -92 57 97 23 -22 -18 -9 33 -9 -10 -20 -53 88 48 -72 -14 53 -3 -22 -9 -30 -75 33 -93 -76 -26 -27 -120 71 -124 59 -27 -33 73 76 16 -15 -10 -27 -53 43 -35 12 -58 -10 46 -82 29 -23 32 24 -33 -7 -28 35 -118 75 11 71 -17 18 -29 -37 -25 -32 -76 -4 66 3 -25 -7 -36 -12 5 39 -28 46 117 70 -21 -14 -58 -126 -106 -49 -91 -28 60 112 -7 4 11 -43 -22 -39 -54 -2 -34 97 69 -61 123 -34 -73 -73 53 -39 -122 -109 -82 -78 2 1 -127 -125 51 -33 22 -38 -112 84 -26 -57 -35 -86 79 -54 29 -56 29 48 -60 -93 -101 25 33 24 40 -86 -105 43 -53 -49 31 -55 -47 58 -64 -43 -40 -112 -27 -10 -100 24 -124 126 24 -113 41 -42 127 2 -117 -48 -53 49 -124 -54 -59 -24 11 -119 57 -52 -127 -86 6 -1 -16 -41 -12 7 -38 29 -92 42 -42 -1 9 -102 -8 -73 -121 -116 -102 -76 -3 -23 25 33 -17 69 -41 -16 96 -79 -33 66 -71 88 -50 1 -16 -5 -120 33 86 -42 33 -44 -79 -26 80 -11 -5 -75 -41 -48 89 32 -51 -23 -24 -25 0 -14 -28 -50 -102 66 49 -2 108 20 -33 -34 -10 -31 15 71 -46 5 -5 46 -123 -13 114 15 67 -93 60 -65 76 12 34 18 -46 -69 32 -88 -63 -3 -73 -89 -17 90 -50 -54 -73 78 -26 -20 -67 19 22 -32 -14 -48 -111 57 -112 58 -128 80 -61 4 -15 37 7 -21 -20 35 47 -19 31 -76 -19 -34 91 13 -16 73 126 93 -35 -41 -1 16 -61 61 -94 1 47 -76 -69 -67 -28 36 64 88 -35 -110 23 -35 -105 -43 13 99 14 -31 11 -36 -76 -57 26 -17 -33 -76 9 24 43 -42 25 49 94 -4 -105 -103 10 -38 39 -51 104 -76 55 -13 -58 23 12 -30 61 4 45 -9 21 -53 2 -32 13 -15 22 -7 18 25 71 -30 14 99 48 -63 -35 -18 112 -128 -39 96 20 -32 51 26 30 -53 -87 -54 -55 103 25 103 86 -4 66 -78 -44 46 16 -122 -38 2 103 53 21 -1 12 15 47 9 25 21 -43 -50 -41 -19 99 14 31 -80 54 56 -11 32 43 122 -60 70 -82 32 -14 119 16 21 -103 1 -123 -13 48 -14 -72 92 -57 2 -43 -61 38 -54 50 45 -61 82 -99 56 -75 41 59 51 63 13 -123 -99 -29 81 66 25 13 -37 -56 20 -93 -19 -48 -24 -58 -19 -44 -12 21 15 12 63 -34 53 -5 -87 -82 -42 -127 -43 54 56 77 12 -77 -28 82 -23 125 63 -52 -1 30 31 73 -19 -127 17 -54 -15 -31 6 -125 55 127 46 24 -37 -2 62 73 23 -2 83 -69 -4 -45 -15 12 -4 -47 -19 92 50 66 19 -51 12 -8 -114 16 3 -108 38 0 24 36 -1 33 -35 -5 23 7 46 -2 9 -93 -19 -21 21 -38 4 -1 -55 60 -104 -127 48 -36 -24 1 -18 36 -116 81 85 47 -69 50 -34 54 122 -12 127 27 35 -2 -61 -35 -1 106 -103 -121 16 -33 57 -24 10 -110 -22 30 -27 16 -33 -41 20 -125 -80 108 127 -3 37 -11 90 -7 -46 59 -34 4 -29 49 17 46 -121 -18 102 -123 -37 4 -47 -12 -120 119 104 -20 -60 -2 17 33 34 45 30 101 6 -39 77 12 -85 63 116 12 -51 127 126 -10 12 66 21 1 20 -26 78 -11 8 -11 -50 -127 -38 92 -74 -65 -108 -57 -19 66 41 -100 -24 -60 82 -23 95 2 -68 22 54 68 -10 12 9 -90 36 33 -103 72 -60 -52 -43 -103 -60 -83 -82 -72 -51 6 -53 -30 -34 -100 -119 -125 -123 113 -15 69 -96 -95 125 76 24 -66 57 126 96 -104 -33 8 73 103 -56 72 40 -48 -24 -12 -60 -4 -69 -56 -51 -70 -36 -56 -45 -80 29 -43 -22 43 -62 -31 10 -20 -70 18 -36 18 75 30 37 -84 39 6 106 -76 -27 14 46 84 -89 -24 -10 44 110 58 -1 51 71 -25 1 -26 -60 47 19 31 2 -116 -11 -42 84 -39 -14 -44 79 -14 2 -121 39 80 -62 33 -1 55 -13 -76 -90 -81 -21 -17 77 44 15 -25 -15 22 69 -59 -127 -45 84 116 -66 -87 51 123 21 13 5 16 43 7 41 21 19 -45 -12 -31 -108 -54 34 9 70 17 -81 65 28 21 50 56 -55 -127 22 -87 15 101 24 49 29 -42 -10 -44 57 17 -66 -36 87 -11 -5 -85 -128 115 -96 -41 126 -21 -1 36 15 1 20 60 4 -6 -88 -5 24 73 109 -54 77 125 13 60 88 127 68 34 -110 6 -3 27 -26 -62 -80 -23 19 -71 28 67 -54 116 114 73 -28 108 -23 -32 9 -8 82 -23 -81 56 -44 18 -45 -57 -1 -106 37 -54 -44 -43 -31 -73 21 -33 -24 -24 -114 -39 -8 66 16 -118 27 -6 56 -2 13 9 121 -31 64 48 4 75 -17 -20 -78 -36 11 23 84 85 -81 -78 40 -25 71 -54 -90 37 41 -16 109 127 65 -45 -59 -2 28 11 78 51 74 3 -12 84 91 51 -34 127 -52 -41 31 -57 -17 -68 -76 53 114 -97 120 87 118 37 24 43 89 120 109 -40 1 41 80 110 -124 125 -89 107 49 -61 112 0 36 17 35 -7 8 -57 49 84 111 58 43 46 10 -7 90 -101 -77 -80 127 109 29 -89 30 -77 -46 -28 -11 -35 12 -77 0 1 -18 -4 -56 82 7 -32 -48 22 -37 -18 44 33 10 -34 19 -90 -15 -54 -94 -94 56 -75 -43 36 46 27 -8 -73 -57 36 -43 90 -36 -70 51 -88 -38 -83 -39 -16 -29 -87 5 32 -14 48 13 45 42 106 80 18 -75 -57 -1 43 15 44 -29 12 -44 -114 44 -20 -48 -15 -36 127 -26 54 -52 90 7 104 -10 77 -18 46 75 48 35 -83 -43 -9 58 121 18 -12 84 1 -40 -47 17 -120 -77 -22 74 10 52 4 -30 -43 -19 -4 11 -86 68 16 31 -1 -6 127 -4 31 -38 -38 21 5 88 -112 63 11 -29 117 -39 108 79 -113 -65 3 48 -24 -15 -15 52 39 -22 -32 34 -27 -32 8 62 22 -27 68 -44 26 10 5 124 25 -74 -4 15 77 -126 -127 -63 -27 -76 -5 -35 37 -50 52 -10 63 7 -78 30 -42 13 -75 18 -63 -31 89 -2 32 73 -17 104 -34 35 -103 13 87 19 -14 -104 -36 -76 -50 30 35 -72 10 -8 -91 104 -96 5 52 -34 24 90 -13 27 -123 72 -27 114 -20 123 -12 -34 -26 -54 -127 -24 70 -6 -75 -50 0 13 -21 5 103 -57 -71 -74 32 68 -73 -18 67 117 -80 -42 111 50 57 -74 -127 -10 -34 127 112 -121 -63 -107 25 61 91 -16 -35 9 -25 1 -34 87 59 56 -105 108 90 -92 37 15 18 -111 29 31 74 -22 -20 85 -76 -42 55 -41 -23 -35 -55 -92 46 -3 -81 -40 17 -84 -54 1 127 26 -120 -15 79 -72 -1 -126 60 -29 -70 3 67 36 -45 15 41 100 -72 14 -36 24 -30 -61 -28 127 82 -58 -6 -51 7 -41 23 -5 -42 -10 -24 79 -70 88 40 113 0 22 -55 -46 0 9 -75 31 -67 -37 -15 4 17 27 24 -113 28 -125 -117 -8 -124 -1 74 -3 -74 50 -20 16 -50 -63 -43 -20 -90 -49 -93 -30 11 -97 83 -121 1 -57 -43 27 -11 28 -62 -84 126 -15 -64 45 50 -32 74 31 -125 95 -46 -79 -3 18 16 79 15 -26 -38 -49 127 74 -32 -25 85 41 23 -17 1 -66 -29 53 5 -33 36 32 0 55 -62 50 -25 36 -119 -47 -3 16 11 46 71 8 -52 77 -37 -25 105 89 36 -37 -3 -19 -49 68 -29 3 -59 34 -127 40 2 56 -127 -121 -53 17 34 -53 -29 25 -19 1 56 -40 75 14 26 -55 67 -126 56 9 -26 22 17 -13 59 70 1 -39 -33 42 61 -5 -51 -3 23 -90 -32 57 -97 -45 15 -65 43 118 43 17 -121 4 20 31 19 -90 44 -62 42 98 -60 -105 -39 24 68 38 -71 64 -75 113 0 -103 -39 34 -39 72 -34 -46 -123 -58 15 55 11 -39 -110 82 -28 -53 -49 -91 76 -21 53 60 -32 -60 50 13 52 11 39 46 37 -85 -124 -20 -7 76 5 76 44 -16 -73 -69 -54 15 19 -47 26 84 -65 -30 50 -24 31 61 47 -12 4 -34 66 -99 -16 -60 78 -1 72 -19 -52 9 48 -7 94 73 37 -11 110 32 98 -62 -45 -124 63 7 -47 54 -49 -18 44 62 46 68 -39 102 -16 -57 22 -36 59 -47 48 39 -27 42 -40 0 31 -1 -6 2 -68 66 -5 33 -41 -46 59 -19 8 1 106 -46 5 48 90 -23 -52 51 10 -7 56 91 -7 51 83 -7 36 -68 47 -17 -87 120 -43 40 -53 -10 -15 -35 85 122 7 -78 30 30 85 102 -26 92 -25 40 24 -11 2 56 46 10 22 121 29 27 -30 -84 -98 -15 -11 12 -35 -85 -123 29 -86 -27 -23 122 76 12 17 29 -27 -42 84 0 23 -5 -22 80 -64 -89 -38 76 -128 -32 -10 -47 2 -97 67 104 -41 36 10 127 123 10 16 21 39 41 19 64 -53 -118 -49 -65 -10 -3 8 -37 -68 -45 89 10 53 -16 -9 -38 -13 -75 -106 -27 -73 94 95 72 -35 -19 -28 6 -76 -57 34 4 -45 18 75 -52 -4 -59 -34 -91 -12 45 -9 6 114 -43 -3 5 -73 -5 -24 -81 66 24 -83 -127 -52 -121 7 40 2 -33 -3 5 3 65 1 55 -34 22 -9 9 125 40 22 126 -105 74 24 -21 126 -39 1 -52 22 -10 -20 -43 -51 -60 -36 3 25 124 45 -12 -120 -32 85 -98 -21 -120 35 -2 -5 9 -38 -84 -1 8 22 -122 2 104 -17 93 -65 127 61 -101 -32 -44 1 -74 -23 -37 60 -27 -125 10 73 79 -48 43 -29 -109 39 -126 15 -121 -125 -41 44 52 -114 -64 -33 69 -55 76 -26 -113 -42 -65 38 -87 -1 47 -14 -14 -27 -43 40 -52 -11 -16 115 -57 59 -90 -20 -64 14 25 2 4 59 3 25 -4 7 32 13 9 77 121 6 -64 -26 25 125 -21 -3 -128 25 -25 72 102 90 -23 10 14 -34 -37 35 -17 -90 -28 -46 -43 -13 11 25 25 -9 -125 -21 -68 30 2 -24 36 21 -128 -26 -11 36 76 -20 -24 -41 -120 -59 32 40 -44 -127 -22 -3 15 -64 53 -22 124 19 -28 59 41 -22 -18 -5 -56 31 31 -41 -53 -93 -39 -13 43 54 -127 97 7 82 89 36 -70 95 0 24 33 -20 -13 60 33 17 -32 -48 -68 -36 -127 21 19 -62 -105 -30 -21 -49 -27 113 -9 84 73 3 -36 -49 -111 104 -65 -122 -45 -20 -29 -9 19 41 17 -108 -64 20 -26 24 -85 -22 -30 -89 -57 -49 -51 -67 82 26 23 -82 -95 -111 -48 4 -6 50 -32 -33 -117 4 49 -117 -24 -105 24 42 -27 -80 66 73 -100 106 -123 -66 -23 -24 3 3 -68 -57 -7 -47 -70 98 34 65 32 -40 -89 124 27 -37 -4 11 42 65 -127 -1 -82 127 -6 -103 -5 -67 -82 -58 11 43 14 -14 -57 26 -92 -6 47 -62 -19 -7 75 -16 -55 -108 23 -55 48 75 -26 69 63 -37 -18 -21 15 -43 49 42 -2 -110 -23 29 45 -1 -70 37 49 -33 123 -22 51 0 -97 -39 -41 -115 -49 0 55 -57 10 -26 -77 82 5 -58 -94 49 44 8 -33 -41 -72 -93 17 87 -50 -37 -40 11 -35 -13 2 -21 0 -36 48 86 80 38 20 70 -31 35 9 32 20 -64 -51 -67 -4 29 -75 -36 -73 60 1 16 -49 -74 -19 54 -11 8 4 2 50 -4 -40 25 -12 -55 -40 45 42 32 107 -108 -27 -64 -23 -54 -3 39 71 -21 77 -52 24 -12 -5 6 75 -9 -63 -41 -125 0 127 -109 57 13 7 73 94 98 -36 8 20 16 64 -9 5 -72 -116 26 -57 -51 31 8 -75 65 -73 -33 21 -35 -22 75 -4 3 39 18 32 -2 -5 46 -53 106 -23 29 21 38 10 10 -75 -97 -54 -48 -63 -15 -66 11 48 108 8 -37 -103 -23 29 -116 93 -7 8 -64 -48 74 -99 111 -65 -87 -74 -34 -71 -64 -3 -38 -79 -5 43 -93 5 -41 2 -87 5 -61 9 54 -51 -77 -101 -45 -29 -5 -41 -89 -61 -13 -76 -1 -1 -41 -51 -64 -7 -49 10 -30 -48 11 -74 -14 -30 -93 -52 -7 -73 -74 -55 15 -5 -56 -48 -88 -52 -11 -12 -53 -30 -15 -21 4 -45 -24 6 -64 -127 11 -99 7 -8 -79 9 -51 -38 -49 -35 -45 6 -127 -48 -18 -25 3 -66 -44 -15 -78 -11 -26 5 -27 -17 -1 -41 -21 -35 -1 9 -40 4 25 -22 -3 -35 7 -1 -25 13 1 51 20 9 -3 27 11 -36 30 -35 -9 -21 -12 -26 -4 52 23 33 7 -19 -63 -22 50 -74 -10 -32 3 -18 -25 25 -13 -5 -34 -12 31 16 31 27 -33 -25 -17 14 14 -6 -22 5 28 -1 -46 28 18 58 -5 -11 -36 -29 -26 -7 2 -5 -10 -14 -18 -38 28 -3 47 6 6 -2 24 2 5 -60 -42 2 -14 1 -2 20 -21 -56 20 -28 28 52 61 12 -126 14 63 -117 34 124 27 -47 -125 -85 9 -60 -128 100 -25 -31 80 -3 53 53 -27 67 36 39 127 -77 68 28 103 61 -31 127 23 86 125 -11 -17 -128 -82 11 -101 -13 -69 5 -1 -18 -65 -16 111 -58 -124 -5 122 -79 76 110 48 73 9 -72 117 -128 -38 17 53 -104 -53 -17 23 88 -87 -82 58 -111 42 77 127 -31 80 25 -97 13 51 3 -50 51 46 -38 93 108 61 37 -38 -8 28 8 19 70 35 65 16 33 -2 -60 8 -73 18 61 -23 -103 -27 -3 -14 87 73 60 -74 -16 1 -122 48 42 19 86 118 84 -44 9 34 36 47 73 -6 71 -12 78 -44 -19 -31 -56 -25 21 -15 96 67 -16 -14 104 38 36 20 127 -24 -29 17 -26 -90 28 116 -26 63 17 82 -14 -2 -48 41 -9 74 -47 44 44 45 30 -126 26 5 -78 -54 53 42 -2 -42 60 -9 43 -3 126 31 -38 -43 92 109 -8 -43 28 -72 30 27 -20 -69 11 14 40 -45 -71 -105 -6 0 30 21 22 12 -75 -19 6 18 25 -26 -20 -43 27 -74 -72 93 -27 57 -14 35 -30 53 52 -85 -94 18 -31 -63 44 32 -10 -77 1 -15 -24 -21 -11 -11 -9 1 -38 -34 -13 -7 -22 -80 -6 62 -6 -88 34 -80 -48 40 23 32 -106 1 53 -40 15 8 -6 -16 23 91 1 -13 21 71 2 -36 -124 -3 -69 53 40 50 52 34 52 -42 17 37 -37 -6 15 79 21 2 43 13 -65 -53 27 -50 -76 61 22 37 51 70 20 -4 -1 32 68 -113 54 -32 -26 -1 8 -11 60 -54 -82 3 48 -5 75 -6 89 5 20 -44 53 -9 59 -22 -24 -15 50 -49 -36 -101 40 -20 101 23 12 -31 -2 -10 24 -8 -21 -12 -15 47 22 -5 14 -17 -24 126 35 34 16 15 -53 85 47 64 1 38 -9 89 -17 -36 53 127 -10 -90 0 32 9 21 92 -128 22 5 -30 103 56 21 20 22 -88 -77 2 6 -31 3 52 -7 8 -10 53 -126 119 83 123 -20 -37 -16 -104 14 -18 127 11 -42 -4 -94 3 93 -66 51 -106 -33 47 -75 -45 100 1 31 -4 126 -60 19 -48 18 -2 -68 -9 80 6 -123 -84 38 -2 -51 13 -22 -54 -62 120 39 59 57 47 56 -37 67 -13 9 6 -21 70 -7 -73 -62 39 38 -63 -46 34 56 97 -20 7 -72 -52 -63 39 -80 -73 -63 42 -1 -31 -54 -33 18 -95 -13 -18 -2 -45 42 -83 95 -85 -76 -101 -58 49 -7 29 -18 109 -17 -14 -55 5 46 -4 -78 7 87 -17 -44 33 -111 -72 -31 -29 -29 -5 81 -30 11 -82 87 -23 101 -35 5 -74 -25 47 47 46 -66 40 -48 -26 -87 -27 64 13 -106 -14 -38 -6 -8 -43 -2 7 38 -122 -18 101 -107 -13 -46 1 -34 1 -14 -3 75 -34 -85 -2 26 42 9 40 22 -125 23 49 -28 -4 -125 -45 52 -104 -128 8 -52 -14 -17 42 -10 -33 -13 -34 -26 -8 48 -25 114 127 -57 -86 45 97 -73 -9 87 -5 -27 -125 43 1 -43 -103 -43 45 27 -4 13 28 76 -21 -20 -4 124 3 8 117 -125 -7 -20 5 13 41 10 19 2 -94 -18 -33 -24 -29 -55 6 -58 -26 12 25 8 -71 1 -23 -49 54 100 -74 0 87 51 -8 46 29 53 91 -53 -99 -40 -61 111 22 -2 67 -3 -8 90 54 -28 -22 -51 -33 -24 47 -24 48 -18 34 97 123 -27 -72 22 -50 36 24 41 -17 83 126 93 5 22 69 99 102 58 7 -10 41 27 -11 -29 -83 7 16 -50 71 22 -128 126 -19 107 31 107 97 -73 -39 81 51 -118 -35 123 29 46 65 -75 31 -55 -102 -3 35 -2 11 -100 -37 127 71 97 16 47 8 17 -55 43 -126 -25 87 4 36 -20 55 -124 86 11 -30 104 53 -67 18 -11 -34 -31 1 92 -77 -19 -116 11 61 -126 36 44 23 90 -63 57 50 -18 -94 -39 -20 -103 30 -34 -5 -64 -19 -48 72 55 -36 0 -19 35 -16 19 13 24 -127 -48 24 0 43 -5 2 10 41 127 6 29 40 20 30 63 34 -49 18 85 -5 28 90 -9 -51 -1 -55 -45 -85 4 19 -1 -84 83 -23 64 -29 -50 16 62 -37 -14 14 31 -88 15 24 -32 -36 -44 55 9 2 -30 55 -36 -90 -28 -30 -12 13 -99 29 -51 -56 -28 -23 -52 8 -38 -18 -55 52 79 15 -45 50 -65 -59 -35 -16 -125 -22 45 42 -29 46 61 21 -82 -5 -13 9 -53 23 -25 8 -22 48 -25 -51 -7 39 -34 61 69 -19 32 44 41 -22 -2 70 -3 -76 -24 -88 -27 -93 -46 -17 -33 41 -15 -59 -87 -31 30 49 41 -33 41 53 -62 -12 119 56 -38 16 1 56 80 8 104 -15 -10 -44 35 13 -8 -8 -48 -85 -5 76 -22 -110 31 44 77 18 -2 57 1 110 25 41 7 83 -17 -33 -74 75 -54 -51 116 99 15 11 -60 -7 7 31 24 26 -5 40 46 17 5 10 73 9 3 -49 102 -2 -107 54 -54 -52 -70 -91 86 -77 -38 76 -41 -15 -7 8 -16 -92 -26 -27 60 -11 24 -69 -69 92 87 21 106 65 47 8 -7 -22 45 48 35 -49 24 -10 30 41 39 23 -3 102 -114 -65 -86 10 -57 -40 -24 3 -18 -36 -12 -13 -35 8 -17 17 48 7 -58 4 16 -17 17 -52 36 22 -53 -28 -62 89 3 36 26 98 -17 125 5 118 64 50 -70 -42 87 29 -125 6 50 1 -9 -21 71 -75 -25 -27 55 -20 -33 -41 0 -73 -101 -1 -71 27 26 -61 42 -92 54 -9 -92 -58 -93 -52 -9 4 -22 -56 -5 94 38 31 0 31 -77 -9 58 -36 22 -5 -10 39 46 -9 3 -94 31 -1 -15 -105 -7 -1 -97 95 38 36 -25 22 -3 56 0 66 -1 69 -93 -18 -91 -44 -39 99 -8 -65 21 12 -77 -53 -26 -33 -63 32 17 101 76 -14 -19 -10 -35 -36 29 36 87 71 76 15 -71 -38 35 -38 33 -49 36 -50 17 54 17 -28 -76 30 -40 -112 0 -62 -28 -5 52 -50 -44 -11 10 8 15 -70 72 -53 -82 -35 -41 13 -95 11 32 22 1 -12 -110 7 -82 -91 17 92 78 105 98 -44 -32 -22 23 -8 -26 63 -81 25 -49 16 -31 82 -87 38 62 -3 -113 -85 -4 -6 36 51 17 -21 21 -92 -6 -14 -82 -38 15 -16 16 -116 36 -78 48 2 94 43 -75 46 70 -32 -25 -116 10 21 28 21 126 20 52 -46 15 127 64 7 105 69 -28 8 46 -103 -6 -40 49 54 39 -37 -33 -97 -43 60 127 -2 -47 14 15 2 -53 49 28 -29 -27 43 -49 -14 54 -36 -3 58 -45 -28 -37 20 42 -61 -1 -18 43 -60 -69 -32 74 65 -21 87 84 45 30 29 -53 -6 -122 30 17 -56 14 37 58 -1 29 -56 26 -15 -29 -27 39 80 -37 26 13 42 13 50 -24 -22 -6 -13 -3 -42 -20 -43 16 55 28 4 24 -14 -17 -38 -78 63 -50 -33 -55 -49 -2 -91 -57 41 -15 -57 -64 -81 -15 2 -2 73 45 -101 -34 72 2 -2 -1 -102 -13 -36 -2 34 21 1 -13 65 1 -50 -11 3 -54 -17 48 -87 -120 -8 -61 -48 5 126 41 3 13 -80 91 -19 -61 67 16 8 7 3 -28 27 -98 -63 -9 -64 -9 -13 13 19 24 57 9 62 29 -34 57 91 -26 -46 8 -37 3 12 9 17 -14 -13 26 -8 2 -60 126 109 -46 -86 40 -24 -31 -14 -59 -20 38 21 8 39 -99 -40 11 -40 66 40 40 -102 50 -21 -8 -42 16 -66 65 -18 64 5 26 -88 14 2 4 -80 -28 -92 -83 -21 47 -52 -27 -46 73 -4 40 -17 -50 -62 -81 -54 -15 -105 -14 -34 46 -10 -125 -99 -25 27 -32 -53 115 21 10 60 48 35 5 -22 61 40 87 -48 -125 -71 56 8 97 -17 -51 -68 1 -12 -2 37 41 -70 46 48 97 17 10 24 23 21 -125 41 -52 23 -61 -91 -11 -101 103 18 1 -44 -90 49 -49 -43 -26 47 -2 81 -17 -38 75 -104 77 -14 -3 -46 -58 -18 68 -5 -97 -21 112 -92 -57 92 80 -40 -75 83 -87 -45 -34 -23 4 -70 -128 -82 121 -51 -58 -82 89 36 -102 -35 -23 -59 15 -120 -36 -47 -20 -115 -70 -83 -96 -46 -45 18 111 2 -43 41 -68 -25 24 -65 -46 -16 77 -35 -109 -38 5 -12 -52 -127 32 -66 89 57 86 -21 5 60 8 -65 -84 4 8 -32 46 -19 9 119 -25 -13 -56 -94 -39 -28 89 9 -9 -27 119 -39 55 -64 -28 -36 -60 -69 -100 2 -17 -32 -94 -9 0 -58 -74 -63 3 -67 -11 52 -67 61 21 -2 -90 110 -72 -127 -56 -62 -7 71 -37 5 -50 -94 -98 50 10 12 6 47 53 -5 -79 -35 -43 -5 47 -64 127 -40 53 100 -10 29 58 44 -35 18 -126 -17 -41 18 -26 -19 122 -16 -45 66 89 -18 81 53 8 35 30 -19 40 41 -15 40 0 -23 -4 -57 -30 -23 25 31 -34 17 69 -59 -128 8 -29 118 -5 -1 56 -25 61 69 67 -62 21 -128 24 -78 60 -105 90 11 106 -126 -13 83 -78 -20 -57 -7 10 42 73 2 113 -30 -72 -112 45 -74 -36 -31 -66 -35 -3 -15 10 37 31 19 -27 5 -28 -46 37 -50 -9 -39 -22 -56 -76 -19 62 -45 53 -65 7 -7 41 -73 106 -1 -51 -15 -22 -60 -10 -44 105 -5 46 24 18 -81 -27 -128 3 -74 -12 13 17 33 -4 6 -7 -18 21 45 40 -20 42 37 -107 54 60 -37 -121 127 -31 -77 8 -42 -16 -54 -6 -66 -14 -15 -74 -19 4 -12 -89 36 -21 18 -1 -39 -17 -43 -49 -101 25 -32 17 -7 -12 4 44 -42 -4 -11 21 50 38 127 55 38 81 1 -37 48 -58 -31 -56 -20 -20 -53 -45 52 -60 -40 -7 -23 52 4 52 -8 46 -86 11 -14 -24 -15 -22 -2 -24 72 48 34 12 -56 -23 -10 74 -12 27 83 -127 -40 -2 9 49 4 23 -13 -37 -58 14 -45 -26 38 -2 107 -81 97 -27 -40 47 26 -49 89 83 75 6 -101 22 -127 -46 46 -95 -11 -84 -46 34 -93 -118 -36 15 -65 16 23 0 126 -12 58 -82 30 11 16 94 20 88 -38 -8 127 72 127 50 -23 -3 -96 35 -37 -31 -48 -72 -79 2 54 42 -94 88 -42 54 -31 96 -101 23 107 -85 -74 94 0 114 -41 1 82 17 22 -29 -18 33 1 -72 -42 1 84 -51 -8 46 28 93 -8 -66 69 25 25 -32 -7 -53 15 65 -36 -24 45 55 -54 -46 -13 -42 12 -98 4 6 -88 -120 -19 -32 -44 -57 71 24 24 -77 -30 -24 -87 16 95 -66 19 -47 -49 43 75 91 10 15 20 -62 85 27 97 126 -97 32 50 -35 -70 -12 -1 -33 -72 79 -23 -54 -126 -28 25 -6 51 -18 13 -18 44 29 -45 -33 37 18 8 -32 -34 -11 -3 -90 -83 -39 -80 74 25 -89 32 -39 -75 -69 -24 18 -29 -61 -15 -2 -47 7 20 -11 13 34 19 -8 14 12 56 30 -56 58 5 -15 -73 -27 -5 -94 16 -23 7 3 21 38 55 -10 9 -40 -38 34 23 41 -4 -15 -51 25 -13 -21 68 -40 0 21 -36 77 -78 -20 64 15 -78 -68 50 55 90 -33 -35 -24 30 40 -38 -58 -40 -14 8 -20 -50 68 47 11 -47 51 3 45 -29 -53 43 27 69 -47 127 8 -10 -18 22 22 102 -10 63 -84 -21 9 -12 -52 -25 -24 -5 -4 54 74 -33 15 -1 -23 -29 -17 62 7 66 26 -43 -40 -12 69 24 4 26 -37 -27 20 -44 -18 -20 -44 -100 -38 -50 -21 -15 8 -23 85 -7 46 -3 -10 -8 -38 -9 -22 -19 -6 -49 59 -44 -42 -25 3 1 -34 -8 -46 59 -31 52 -46 -21 27 42 -14 -44 -25 14 76 33 -52 -18 15 60 0 51 10 60 -7 -2 -25 10 -24 -80 32 -12 31 45 -27 16 48 -66 57 26 -78 -75 12 49 14 33 -18 -42 74 21 80 -22 82 28 17 43 -29 -70 32 42 -62 -19 1 -114 60 119 50 -28 -15 -62 66 -23 -78 -39 -37 -60 60 -25 72 -22 21 -44 116 -15 32 25 -21 4 101 1 -24 -46 33 32 65 -62 -21 58 -71 70 -65 19 -15 59 -40 -2 11 45 -128 -96 -72 6 30 -40 112 69 -119 69 -127 0 8 119 50 3 -42 39 85 -8 73 39 -59 -94 -7 -108 -24 -20 -11 68 -34 15 -83 31 8 -63 -26 -66 16 -120 7 -53 -78 -27 -43 0 103 -61 11 122 127 52 2 109 40 1 -40 -29 79 30 15 4 -20 84 -18 -113 82 82 79 -37 64 -52 62 -17 -38 6 123 60 10 -98 -56 -21 -63 123 -31 30 39 13 10 -12 4 85 -46 121 -51 69 -124 -65 34 -25 -111 15 9 51 92 -43 -26 89 -83 -4 24 -18 -29 -17 38 12 -39 -94 -46 58 -103 9 -116 89 4 -55 10 -9 -51 56 -48 -7 120 -11 -8 87 49 -49 -29 12 -6 -5 106 57 -1 12 56 25 80 -53 13 51 77 -76 57 -48 3 -51 18 -50 -40 -9 -76 92 16 -32 17 -14 -33 65 14 -75 -73 -13 -125 -50 62 39 6 -31 126 18 101 46 -22 20 44 -6 -102 -6 -48 102 -98 51 -108 -23 -4 -74 -16 -70 -46 124 -110 78 -43 63 18 120 29 -12 110 36 88 -48 -123 -72 26 -68 -8 -53 -20 -93 -32 -13 61 -84 20 16 -3 56 60 -92 121 -117 69 1 32 64 -60 -121 -126 123 80 56 22 64 -16 -35 21 -38 108 -50 -44 108 -98 6 -43 -58 -91 -32 2 -49 17 68 54 -49 17 -88 42 36 -20 -7 -90 -82 -100 60 69 -58 28 -38 124 24 55 2 -28 39 -3 16 99 -10 16 57 16 41 -53 84 100 -44 -91 58 -15 -11 -45 35 12 -115 -33 -54 -66 21 -109 50 72 127 58 47 20 -29 -2 -60 86 -22 78 -30 37 43 -52 -76 -3 19 52 12 -18 6 -17 -102 11 36 4 60 -12 17 43 -39 -59 -43 4 -48 -21 -8 -7 9 -3 65 124 85 6 104 97 29 35 0 -13 -92 -53 59 -112 -99 71 28 46 28 102 6 -79 110 -1 15 23 -22 -12 20 -93 80 -10 96 48 40 -7 57 6 117 6 30 4 115 9 23 46 69 9 39 -43 -22 4 2 17 40 -20 68 -25 19 93 53 45 4 -5 -73 -44 98 -13 50 104 9 -35 47 -43 -31 70 37 22 -14 -16 -4 69 -9 28 -38 -47 19 15 -11 20 -5 -15 78 9 106 -25 99 24 -60 -58 -26 3 -53 48 -52 8 -9 -28 -26 41 -61 35 40 59 -88 64 -44 -3 22 33 -55 -17 18 -33 -71 -22 -12 -1 26 -105 22 -27 -41 31 -86 -112 -33 8 -43 6 -26 56 52 -20 7 -34 -95 42 -33 -35 -37 -89 -62 49 -66 19 -72 -40 14 -43 41 -46 48 15 0 -61 -113 79 10 56 75 -15 -22 -40 13 6 -58 -74 23 -60 -22 -3 8 -94 -21 41 -66 50 35 -19 -41 -123 -120 -26 -56 75 -41 -37 -124 -75 -37 -85 -66 -48 -46 -101 19 -69 29 -96 -31 99 8 -26 7 -47 63 -1 -8 -5 41 18 57 0 -22 34 -78 36 -66 5 -53 -14 -23 -123 -42 -126 -48 15 -19 84 7 -36 8 12 56 37 -31 25 98 -5 -37 -29 -4 -49 117 -43 -59 14 4 81 26 -31 -37 -120 -71 50 -88 -128 81 0 -15 10 123 1 -13 57 -19 -14 48 84 -23 2 -40 -35 95 -36 -10 23 41 17 -23 -121 15 -10 -16 10 -61 21 -87 13 127 -95 24 17 46 101 -14 -77 43 127 39 -32 4 57 -73 -75 -6 13 104 11 4 -114 -28 63 72 33 27 -10 -63 99 -14 -45 -91 23 24 25 77 -79 -42 -28 121 57 60 107 -3 -66 11 -36 -88 37 15 -9 -58 -86 -13 43 -36 18 15 -1 -86 61 -107 -87 88 43 28 10 9 88 4 69 43 -26 115 41 -9 -5 65 10 102 42 -22 -100 -68 -57 -28 -113 -34 13 -36 123 0 66 4 -98 52 -84 -5 54 58 -12 41 44 -33 116 -58 25 -127 6 13 -124 -49 54 -68 24 30 -111 -48 -12 -86 -35 -44 -44 -68 -31 23 -3 -63 -1 29 32 76 84 90 41 -32 14 -103 17 53 -28 -10 98 18 27 20 -26 21 -73 31 -42 58 95 -18 -7 -46 120 6 86 2 2 -26 2 -22 -53 -13 112 40 -66 109 31 13 108 -117 77 74 -52 13 73 98 91 -7 -121 -50 39 -66 41 121 94 73 -71 -88 126 -20 91 -13 26 23 80 12 51 90 87 -55 -38 68 12 -54 47 110 28 63 -98 36 -2 23 -21 -26 -72 44 -28 -126 -43 6 89 -5 70 -30 -15 -53 -125 50 -34 -10 85 77 26 -39 39 9 36 -31 23 -57 102 2 78 -43 -45 -20 -2 -3 34 -17 5 -9 19 84 42 69 118 125 -29 -52 61 3 -16 12 68 21 -5 96 6 -12 -35 115 -16 108 -42 -49 83 23 -91 -63 -93 88 -19 90 -94 22 47 102 91 42 94 35 -28 113 52 -27 -52 -22 19 33 24 -27 39 51 -61 -45 23 69 -13 -47 -32 -12 8 45 -6 13 16 78 -9 52 -63 39 -44 15 -26 -22 81 -39 -17 27 49 4 98 27 20 -3 36 22 -30 18 40 -10 119 6 63 -2 117 35 121 105 30 -40 -15 -76 2 10 -39 29 86 -114 20 -21 31 34 -7 89 -115 -74 -44 -1 -66 54 -100 0 37 34 -58 -23 -121 -23 -41 60 17 46 -25 -17 124 10 13 79 81 12 40 50 -108 123 20 -81 -125 32 -11 -32 6 -20 -26 80 -61 6 -82 15 13 3 57 90 103 5 20 -14 22 96 -42 36 -128 -16 18 -108 76 44 85 20 -37 2 -68 36 56 44 61 -67 -19 -1 125 -9 122 -49 -78 21 -5 116 -15 2 -79 20 -35 -60 24 -122 -98 -123 -118 -93 -127 29 -5 -96 -60 -21 -105 -76 -29 -3 -37 50 -56 -124 21 -38 20 -67 28 -27 -41 -67 20 -10 -41 88 14 36 -25 34 -67 -36 83 53 55 -37 -44 -24 -69 86 -32 -126 -18 -57 41 56 -104 -35 -29 -107 -125 -99 -45 -103 -25 23 -64 -123 36 13 66 -91 -33 -62 14 -75 21 -49 -13 -88 30 8 20 34 7 -27 96 -30 47 15 -29 14 -30 55 56 -8 0 16 49 -40 -101 13 39 -29 -56 48 14 35 -65 10 32 5 70 9 -36 8 9 16 60 27 -56 28 -57 -53 3 43 54 61 90 52 -28 23 -16 -38 25 55 20 -82 -40 124 117 84 20 56 30 31 -53 -35 2 -30 24 18 11 -18 -9 11 30 34 -38 17 0 40 -47 -79 54 30 20 -60 45 -37 65 -16 -43 -56 -38 -53 -87 72 -1 23 31 10 -17 20 15 13 59 36 -1 39 76 17 5 -18 -40 -24 6 29 4 -24 74 5 11 62 -65 -87 -53 30 -20 8 -30 -24 74 32 3 46 -54 0 -51 -7 63 74 -34 -11 20 38 -47 19 -13 -28 48 -72 -22 -37 26 -23 0 -36 -1 62 120 -123 19 48 -62 -7 -21 14 -7 -2 90 62 -24 54 -31 32 -46 -42 -17 -1 -87 24 79 -7 0 -50 14 24 -68 20 -44 87 -1 114 106 -27 60 26 6 -30 -21 -41 86 58 -13 21 18 -6 90 28 -91 -43 -91 -67 -6 90 33 45 114 -62 5 -26 -13 -24 -16 -52 -114 51 19 -44 -72 -46 -6 16 -3 -61 -71 120 120 36 81 -54 -19 57 -51 -24 -68 -31 -27 50 -35 -43 7 48 -13 36 12 121 -52 -19 25 1 72 9 45 -14 -64 78 40 118 16 -5 23 -58 -3 -12 -127 27 9 5 -70 80 -47 -57 -1 83 -96 -79 121 -30 38 -12 26 -6 98 14 -2 112 23 104 53 -50 101 -90 4 0 -27 -30 105 -27 4 -120 -16 -1 79 100 22 -95 66 -25 127 40 7 52 -39 -18 53 -119 -4 15 -73 64 23 38 -89 68 -7 26 70 -67 12 66 -18 103 -83 22 -66 13 9 -42 -11 -4 -1 36 71 1 -53 -4 3 119 63 -37 26 -36 66 16 -31 64 49 26 11 25 24 -42 -17 -17 56 28 -113 -7 -105 26 16 -33 38 -47 -23 23 -58 43 23 -55 83 35 45 -27 -7 127 18 -32 -67 -1 -24 -65 -11 29 -2 32 52 70 43 50 -15 82 -20 15 45 21 26 -61 -9 94 75 -47 9 -76 65 -11 -56 -24 -2 -1 -107 39 -106 27 -28 63 11 41 -48 -84 -76 102 -51 -127 16 -30 -3 65 32 58 50 21 25 33 -24 51 -14 102 16 7 -102 -5 -43 50 29 29 27 -41 54 63 -3 -10 -21 -34 24 33 94 -57 123 -8 7 -70 82 -6 9 -128 -128 -8 102 63 84 108 -73 37 96 123 12 35 -10 54 67 13 -98 -19 -58 38 40 72 126 97 -31 -66 37 37 74 64 70 6 -52 4 33 -45 104 0 44 84 -32 19 -10 44 81 -52 -83 66 -93 -46 127 116 9 -8 -12 -51 -63 3 57 52 39 41 -79 112 1 23 115 -32 -36 84 80 89 -52 -14 118 46 -2 125 -66 52 -82 45 -37 5 10 -38 108 -48 -71 -20 43 -27 31 80 118 46 20 89 61 44 -78 -49 110 -21 4 5 52 -53 51 29 12 -8 41 40 0 51 27 17 69 0 -44 8 16 -22 60 -20 -46 10 17 -63 -104 -41 -27 -84 84 17 75 26 -100 6 10 114 28 62 -14 -35 15 -53 16 -24 19 16 103 107 -16 -91 -79 -8 28 25 58 -6 -62 16 48 91 -29 -33 -70 24 22 16 5 124 22 -126 21 5 57 14 34 -1 42 -116 -41 -49 42 -22 -59 35 -42 -87 -87 73 109 -41 60 108 -5 1 -64 -106 -66 -46 -96 13 -103 103 -84 -92 -94 31 -9 -57 -31 -22 107 120 -4 -13 30 69 107 45 -19 -98 85 34 -116 -128 -104 51 47 -104 -37 -55 -38 126 12 -23 83 3 18 108 -33 25 52 43 12 31 59 66 32 58 123 -9 -3 3 -103 58 104 24 -52 46 -101 22 -11 27 -26 -41 -31 39 16 -4 12 47 57 111 -21 -52 44 43 -80 -98 42 -30 -34 116 -63 12 -63 41 15 -110 -76 -20 98 -81 -21 42 30 0 118 113 -7 -64 -128 -125 -18 -12 -61 84 -90 -56 -3 -70 76 -125 34 126 -100 -68 -24 -24 -124 -64 77 -13 -11 56 94 36 -117 -1 17 57 -53 -102 -48 64 43 34 -99 75 10 -46 -49 -15 -51 113 90 65 -33 -122 -17 63 112 86 -5 -58 71 -68 81 78 -54 35 -85 -59 6 25 -19 -40 57 96 119 33 -124 11 37 -8 -20 86 26 58 -122 27 42 -31 6 121 -12 -7 -53 -105 -59 14 -20 30 120 -5 82 29 -79 66 11 80 -45 43 27 -43 23 55 26 -18 -30 -39 42 73 27 58 -8 28 33 38 86 56 68 119 47 -52 37 40 -80 41 99 -38 -51 109 -109 -47 9 -85 86 3 -57 42 -4 62 37 -7 109 -14 43 -12 36 9 10 81 -1 56 -67 13 -51 105 33 -57 18 33 13 -30 14 39 72 58 73 20 71 -45 66 58 58 21 -47 83 -87 17 70 20 37 51 -62 41 14 -62 -18 -52 35 3 -71 -11 37 -70 -75 53 16 -127 65 -23 -30 -43 -51 -83 49 14 -48 26 101 119 81 1 -14 -20 93 11 -31 -31 -28 -50 -39 -8 50 -25 -59 6 -22 59 10 -33 0 -4 -124 3 -16 -27 -127 31 37 53 -76 -33 -51 38 -30 60 -2 54 -2 40 -83 25 8 -43 -6 62 -71 49 -10 -9 -24 -13 -7 -25 -3 122 -76 14 -24 17 43 20 2 -82 47 108 -12 -1 63 -74 -79 4 12 -96 -12 -86 65 65 55 -3 -36 -65 -80 -5 26 -40 43 112 -78 10 41 82 60 -21 62 15 -51 -11 96 -18 45 -84 76 -69 -83 -34 34 38 -21 -86 35 5 4 -20 42 -18 -102 -18 -26 -77 33 -4 38 64 -16 41 51 30 -65 46 27 -55 -27 -6 -44 -79 -24 41 115 29 -56 -36 -55 -13 -31 -49 73 -6 -48 52 34 -47 -32 8 4 38 3 -36 82 -8 -96 71 -13 60 49 -73 -27 -35 -117 -29 -98 45 101 -59 -1 -56 -7 23 -57 87 8 -15 -71 75 34 -25 -31 -70 27 25 31 -55 -30 -70 -36 -16 -51 -81 29 80 24 -11 -14 31 -5 -57 -39 31 93 -41 80 12 35 85 -10 -37 -51 13 -40 -40 -4 -79 9 -57 -29 -57 -87 -12 20 -62 16 -19 24 15 -14 6 -31 78 6 -5 -40 -48 -103 5 21 -74 6 40 -95 12 21 7 -55 -70 -2 -10 47 35 48 -27 -30 -61 34 98 6 73 -58 -70 37 68 46 97 -31 -3 -41 -71 41 -105 -68 -85 19 -12 42 118 119 0 11 -55 -39 -5 -18 16 48 13 -30 50 -18 53 -23 -10 -25 90 -30 -18 14 -11 15 23 -3 46 8 -39 104 -32 -75 -48 47 10 41 31 47 -76 -28 -96 -12 8 -2 -13 -81 56 3 -21 3 5 14 -46 38 29 39 -26 -51 -11 90 99 23 -41 47 13 48 -49 9 -67 -24 0 61 39 -102 41 -1 -59 -25 -65 -62 75 74 4 19 -22 -8 -128 -63 -76 -79 -9 67 26 11 -74 68 -4 82 56 -105 -34 -83 2 9 -47 33 -26 -52 70 -16 44 -114 54 127 97 29 64 94 -18 118 19 -17 16 -71 25 10 11 -83 126 -57 61 -25 -116 -127 16 -43 -49 -25 41 8 79 37 49 64 -122 40 -90 -22 -127 -53 -4 22 -57 -72 -49 23 75 26 7 15 -15 -60 26 103 -40 -3 116 9 10 39 6 3 -57 -44 -56 44 -17 -32 -91 -1 50 47 -36 -34 -38 -96 -61 -127 -68 -4 -11 -94 100 54 69 58 92 3 -41 -110 -70 7 30 -13 42 2 -119 -1 50 7 14 100 30 -100 8 55 118 -21 1 -5 17 -70 118 -43 4 -69 8 -26 45 -11 -29 -60 -92 -128 -44 116 69 -39 -11 9 -1 96 -17 -58 -49 -34 -15 24 51 1 -98 0 43 26 -44 -11 19 -41 -75 -23 28 -4 55 -37 -23 77 -56 -57 98 36 -35 17 -52 -5 117 78 36 -12 -39 -1 75 -65 -53 -10 48 13 66 86 122 57 31 -45 -52 38 -38 -22 -128 -34 -89 -16 45 68 6 26 72 30 2 105 -27 21 -17 -77 65 10 40 55 -3 42 11 15 4 -13 -5 82 43 50 -41 -32 20 -25 -30 4 -38 62 4 29 99 -83 83 -65 -121 28 43 -65 24 26 27 12 37 -66 -42 36 -84 -38 63 -95 -24 91 -50 -126 -91 -88 -77 -86 18 -112 48 -12 -21 61 78 -3 17 -39 -26 -88 70 29 33 -8 75 -53 12 -32 -80 -36 0 16 -114 -91 6 28 12 -8 -46 -76 34 27 -71 18 10 -25 -124 -24 -72 125 30 39 69 -69 20 108 -95 5 -10 103 -13 -31 97 -109 -46 33 46 45 0 -29 -117 -106 -27 71 30 -48 -115 5 18 25 -77 -123 -2 18 40 -26 4 -61 -13 -26 -92 89 -40 -101 -48 -14 -78 -127 -65 91 127 -8 -127 31 83 -68 -73 10 -82 50 -111 -29 -71 20 -31 112 55 -41 49 3 -70 -25 -56 -34 -72 -3 -7 24 -22 -66 -16 -45 -38 -1 -18 -45 29 -41 -30 60 74 -126 94 38 -46 62 -25 -108 -27 86 40 27 -14 -1 -17 -65 6 -43 74 37 -5 8 -75 23 -80 -14 -39 -28 5 60 -34 -47 23 -16 -4 28 25 -32 -28 -17 19 8 -44 48 -30 -40 49 -1 29 -76 -17 -31 -2 13 15 5 118 28 83 80 29 105 -43 31 -4 48 68 59 35 58 10 -77 -128 -21 28 4 -55 -107 -3 47 42 -43 -43 33 127 35 -14 92 60 122 -57 16 -97 127 -7 -77 26 -5 -17 39 -3 -1 -100 14 -50 -13 -79 4 -14 -67 -22 42 6 52 -24 -24 -3 -47 -7 116 -52 -2 -106 58 125 6 -41 -20 -67 21 50 -94 -111 -57 23 -48 -72 -21 1 -117 -21 -27 9 75 -125 -54 33 -6 -5 0 -35 3 -27 -6 62 -16 -5 -39 -33 -3 -41 45 -13 -84 -20 9 10 -39 -42 -43 31 -30 -59 92 -51 -49 -17 103 -22 -69 9 -57 -12 -32 -19 73 -37 -126 47 19 -15 71 -53 43 25 -17 -61 18 -11 -16 45 -61 -42 -55 25 18 -57 118 -80 -12 -2 42 -45 17 -23 73 -50 46 47 -43 -21 10 -63 30 -69 -33 -64 -93 -24 -19 55 -27 -123 1 65 -2 27 -87 97 37 -97 -7 3 -114 -22 -51 -16 50 -17 5 -95 30 -68 14 35 -45 -47 -8 -23 -36 -68 -98 58 47 55 -7 38 59 -46 66 -15 25 -47 -11 -12 -58 -12 87 11 63 -20 -38 -51 5 -6 -89 -2 -44 -44 -3 -29 88 -18 -11 -60 -41 -123 4 8 -4 -8 -56 -64 -28 18 -87 4 2 -43 55 50 127 14 62 70 -4 -14 65 -24 -15 56 -17 -79 -36 80 -6 -18 59 -11 7 106 85 -20 108 -71 -33 -64 44 124 19 -63 -99 -51 -13 116 103 127 38 -24 -36 41 -2 86 94 -59 -72 26 -12 1 -10 -111 56 -13 127 -50 -96 38 -15 71 -120 55 -18 127 -55 -72 38 126 92 -12 38 -128 -13 15 -1 -78 -56 -76 -127 83 57 -47 -49 -69 24 -101 -87 -58 26 96 -68 13 -47 -14 23 -65 60 -44 26 -15 -54 -29 67 111 -65 19 -127 48 -1 -118 46 -20 -35 59 -37 -107 -23 -116 -68 -28 -115 18 -127 26 99 -9 11 -108 -90 -125 -128 -73 -5 4 -45 -72 67 22 -27 -122 -72 -123 -78 -118 62 116 107 53 -19 -118 -126 -127 -41 59 -72 63 -99 31 -126 18 19 -19 -112 91 -85 -28 -5 -59 31 -60 -125 -118 -8 -47 -74 -52 -98 -86 20 -40 -37 -18 -62 -10 -127 31 -33 -114 15 -92 31 127 -40 -32 -18 -54 127 -42 -36 -30 -22 -38 -108 15 -30 -59 -16 -3 104 -29 -88 11 -15 6 26 -65 30 58 -77 22 -12 63 -32 -59 -100 -38 -79 -70 -13 16 0 2 66 14 -51 61 -12 5 -50 7 -43 81 33 99 26 19 127 -36 -10 113 26 29 -62 0 -107 -65 52 -90 127 16 49 15 -22 62 12 50 -7 -65 18 -63 12 -85 16 -39 -20 -31 -63 -55 -90 -10 -96 -4 20 -38 -65 -122 -14 -3 0 125 -21 17 7 95 -10 -8 10 1 -49 11 -57 -2 21 122 81 46 9 -98 26 -35 18 9 -95 124 -70 30 7 -17 19 42 15 9 -128 -124 39 -112 58 2 -87 14 -123 -44 -128 3 8 85 97 -14 84 -12 80 -60 -17 17 -60 39 127 111 127 23 -16 -106 -16 18 -84 -61 -29 35 9 12 47 103 -40 -126 -14 86 -24 -108 100 21 -67 76 25 96 12 -128 125 -9 70 -68 -35 -63 -45 -7 -124 -97 -100 112 101 123 30 -45 -109 45 -114 -5 -44 33 13 20 -13 19 116 -26 16 -27 -60 -109 -38 59 -63 95 73 -20 -4 99 52 82 126 31 -59 54 -1 -16 59 12 28 -93 -5 5 -5 -121 -63 -47 -82 -72 -38 22 -72 29 121 -64 6 16 -24 66 -66 11 8 57 -110 67 -28 15 19 124 89 110 31 -38 44 123 124 58 61 10 -35 87 -98 55 36 60 49 91 23 66 -24 -51 35 127 32 -22 47 4 -24 23 113 127 58 83 -73 -37 -29 121 54 27 46 78 -78 86 107 18 -44 84 50 -30 51 -32 -21 71 -108 18 39 98 -4 -23 -55 -39 44 60 13 38 -109 -81 98 -116 -89 38 36 -81 -10 33 -47 26 -12 4 35 56 35 -42 -18 -51 -29 -17 11 -56 99 -48 62 -54 30 -98 52 35 -44 -95 -8 107 47 -24 37 34 -35 45 -64 -13 -95 25 48 -28 47 90 16 -34 -24 65 -32 25 88 -19 40 93 12 63 -21 12 84 83 32 103 -56 62 29 125 -3 -55 70 -5 37 22 -36 27 -17 -110 19 -87 -78 -102 55 13 -67 -14 103 -83 -57 9 -4 21 9 -116 49 84 -10 124 -7 -12 10 26 55 -31 -85 -53 0 127 75 127 127 31 -92 -51 51 -83 22 -67 5 69 -13 19 65 35 -40 -42 59 13 127 -30 21 37 -7 41 5 10 -24 19 63 45 25 -79 82 -22 -60 13 -57 8 -114 -15 56 10 30 43 -4 44 -51 -83 -54 -17 48 -10 6 -15 127 -49 -24 -45 -43 63 -49 49 24 -48 44 83 88 -11 43 -40 44 20 90 41 7 52 -101 49 121 49 -14 -79 75 17 -7 8 77 14 40 110 -38 51 29 67 -23 -32 -30 -5 101 111 -9 -29 -16 -39 -48 -58 14 14 25 -64 113 -68 -36 -57 25 -31 65 -53 29 22 23 -10 -59 -2 59 -64 108 10 -1 111 40 121 76 87 104 -77 83 90 124 -107 -63 17 38 15 97 125 105 -63 65 27 -8 37 28 -1 -80 51 -37 119 3 -62 4 61 -12 -58 -7 -105 56 -74 -9 59 -77 -6 2 110 -34 -116 31 20 11 -39 -91 -2 -55 24 -48 -21 -21 -22 77 -125 31 14 101 47 32 -20 20 39 43 -61 -35 -126 -29 55 -33 21 1 -9 32 -28 -43 18 87 -21 -77 -10 -66 -29 -68 -77 -2 76 -57 5 -21 -65 58 8 -40 26 -16 -3 19 93 -16 -8 127 -23 0 1 11 -111 -48 102 -22 -101 -18 -33 -19 -1 -13 -56 2 56 26 -10 -75 -35 11 -27 -4 -1 -60 -59 7 -21 -107 -21 -112 9 -82 -43 4 -22 55 57 -33 48 84 -50 41 25 -24 3 -58 17 36 -21 20 -19 21 -50 102 1 -106 -2 -74 34 32 -7 87 45 -35 39 -2 -9 40 -54 -19 39 40 -48 6 -25 -54 65 39 -34 31 -53 -14 -25 -50 -76 -32 -89 -78 -79 29 51 53 -71 38 -21 -91 -59 -39 -52 92 125 -19 -89 60 76 106 52 75 -67 121 22 69 100 -60 -88 80 29 127 76 51 40 -3 32 33 16 121 28 38 101 83 42 82 -4 -65 36 29 -19 33 18 26 32 -31 39 119 103 43 126 0 79 6 -26 -25 34 114 74 23 19 125 53 -16 54 -111 60 63 84 14 6 111 -69 71 32 -56 79 33 120 -13 19 96 104 71 34 -81 11 14 10 46 -40 10 43 4 51 47 63 62 75 79 61 75 -16 -83 61 98 -112 -28 18 47 -24 -5 37 -7 -19 35 73 -47 3 -53 -98 76 49 -74 -75 62 16 -30 124 -54 120 25 117 126 3 16 -55 45 3 -3 -23 -107 25 29 50 -72 36 43 52 -47 -45 26 44 59 98 37 44 44 101 -49 -31 -1 23 37 -16 -48 -14 -23 3 -14 22 17 49 68 56 67 -44 91 22 38 45 38 15 -21 37 4 15 73 50 -32 125 -7 -107 66 -1 32 -15 -12 -33 63 15 -8 5 -2 -65 -41 -126 31 112 63 109 -100 -93 48 -7 126 -7 -2 78 36 -23 36 79 15 82 55 32 -24 -24 124 -50 -83 -76 -26 -39 61 1 -3 -36 -93 -39 -50 -30 38 113 7 3 22 -6 74 36 47 -61 11 47 -68 104 0 -49 -81 75 -48 -109 -21 -100 -79 -12 -116 -17 -40 -41 -25 38 49 8 29 50 22 86 51 -87 3 -126 -128 -12 43 -83 82 127 69 43 -31 72 26 -10 -102 -2 22 31 31 -32 44 69 -31 127 63 -17 106 -36 37 11 74 -69 113 47 18 28 58 124 17 12 -49 2 110 27 9 56 -38 -15 -23 22 42 -17 14 -3 44 79 -8 77 -7 -92 50 37 -8 111 76 52 0 23 68 -21 2 82 12 46 45 -62 48 27 3 53 82 -44 -27 124 -10 46 -11 51 71 46 104 21 42 -31 37 37 105 56 -18 -17 -1 45 -2 53 49 41 124 68 20 8 33 44 40 -1 -9 -42 6 -7 -61 -21 3 24 -36 66 43 16 -15 -36 3 25 -49 -4 -24 29 10 64 30 30 -51 -3 46 -34 -40 -5 -14 7 27 35 -30 1 7 -16 44 33 8 -7 0 -17 -69 -36 3 1 1 8 4 28 45 -4 -31 -38 20 38 -28 44 -1 4 21 1 28 30 75 12 97 -3 -13 -43 -13 -33 7 47 -16 -10 -2 23 0 38 -58 56 -78 -31 48 -7 -8 -1 -10 -44 21 -7 39 99 86 -80 -41 -21 20 -27 59 -28 -63 -7 59 -20 42 -2 60 -3 -6 -75 -66 -10 -57 31 49 -58 26 -34 41 21 -64 4 3 -8 -9 -26 -11 -111 -36 51 -52 -59 53 85 18 -10 24 -13 88 52 -57 -86 3 -4 -59 16 -49 -39 -5 -33 -104 -27 62 11 -20 9 -8 -10 -120 8 -77 51 -63 -28 -3 37 28 22 49 -65 -18 -74 -23 13 17 0 15 127 -35 78 -78 14 -17 -2 -36 -14 45 127 29 37 37 73 14 69 -55 64 40 -96 -19 34 -11 -52 65 8 18 10 4 60 9 26 -99 63 51 -98 8 57 -89 -20 -71 -47 63 -5 -45 120 -17 -63 20 127 -62 -46 57 -27 -82 76 58 21 -111 8 -90 86 9 -91 20 47 59 -69 -13 58 -30 -15 7 -48 -29 120 118 -8 -31 66 0 -24 44 -119 10 -39 36 66 50 -25 -5 -20 -7 -63 101 123 -86 -58 79 -1 125 -39 94 33 17 65 65 -47 21 -7 -60 -35 -58 3 23 87 -36 59 -50 36 36 68 -7 -76 83 -2 -34 -69 -32 -40 41 5 -29 21 57 -53 -42 -51 -26 15 -82 42 30 -39 1 -5 -12 27 105 -12 -36 -26 15 -8 58 -83 0 47 -50 127 -112 5 -1 35 -111 -5 9 -40 10 43 -37 56 30 39 13 -10 -18 16 59 -37 105 -22 -40 19 -89 10 26 -8 -54 -34 72 -51 -53 68 -12 4 -70 55 40 -41 -41 -19 55 20 50 53 40 -18 24 -20 -61 2 -31 -89 -20 53 33 63 24 -88 100 51 72 49 37 -109 -15 -67 35 3 -18 -42 -93 63 4 2 -65 -12 -80 17 -96 26 21 69 -105 -61 106 -23 1 -74 68 -73 -16 -6 27 66 35 -54 23 3 -89 -71 -59 -71 -11 -17 27 0 -50 4 -18 8 -40 10 32 40 18 -5 53 -42 -45 -91 59 -6 -4 22 1 62 77 -12 24 -6 -125 126 -20 89 -45 67 -13 89 -25 -10 -30 36 108 -97 51 -10 -13 -20 41 -64 32 -28 -66 -2 3 2 -83 -42 -21 -41 -3 -6 -90 65 115 -84 -11 -109 22 -69 -56 34 101 -68 -8 -31 -65 -15 121 104 -87 12 -9 -4 -13 -97 93 3 -40 5 6 37 -59 -9 -126 35 -25 68 -30 92 47 5 -44 -25 -110 -98 46 76 -119 -22 -29 37 44 -35 -21 78 70 40 5 108 -13 55 14 72 -25 99 29 -28 10 11 12 -63 -19 -17 112 41 33 58 10 -37 99 13 -9 -15 12 -10 14 18 -9 -59 70 -92 0 4 27 69 -41 75 48 13 62 39 -49 60 -33 -5 24 13 -21 -49 -8 -70 34 126 25 -9 -29 -19 -39 2 75 -93 -56 34 -26 75 -65 -42 -45 102 -96 23 -14 -16 -41 -80 -66 -91 40 4 20 40 6 30 13 97 -34 -2 -40 8 -43 34 -29 66 -63 -26 4 -16 -66 -59 -44 73 -3 -39 -9 -12 -27 32 -22 -47 -56 -2 13 -26 91 30 -94 -69 -45 100 69 35 34 101 92 -36 59 4 -27 -17 21 -100 122 80 -48 28 127 8 60 37 32 -124 -17 -10 -41 5 -124 33 101 32 22 -7 45 -36 28 -11 -39 108 118 -4 2 52 41 -45 -53 34 -121 -78 18 -81 23 3 -44 -30 -29 -43 -80 69 50 26 -25 21 -5 117 -12 -79 -39 43 -91 -22 0 -44 61 -70 30 63 -63 40 -77 -7 -45 -29 6 -28 -19 -14 18 -32 -43 -51 106 6 -120 6 35 -22 12 -28 -4 -16 -101 -27 -125 -98 -44 -41 31 -61 38 -7 20 -16 -18 47 -6 -33 76 -40 -32 12 -5 -63 41 21 70 15 -12 -67 20 -19 125 -98 81 -47 -59 -39 -1 35 106 28 -9 67 0 1 46 -22 -94 2 17 -14 3 75 96 37 38 -23 82 -106 -37 7 -5 -73 -5 2 56 9 34 -6 -17 41 54 -24 -70 -87 23 -25 -42 -84 -92 -3 -57 12 -43 44 51 -70 -17 -18 -71 -58 42 52 -9 -14 -100 -11 -1 -67 -33 91 99 1 41 -35 -101 -123 2 8 31 125 23 28 35 -55 -5 15 -27 126 -46 16 54 74 50 -18 24 -37 14 -13 -39 -46 9 -54 60 55 -13 -90 -24 27 2 -6 27 -44 -23 5 9 9 -101 -4 44 108 10 55 -52 -10 -68 -8 -126 -61 -12 5 39 -17 -9 -21 26 46 -30 99 -3 78 -6 33 -8 -12 -61 -62 -23 0 -49 17 10 -7 -63 -51 5 -12 -59 22 45 -14 50 -2 -16 22 -35 9 -31 -54 -8 10 7 13 -11 55 1 45 -34 -20 20 43 0 127 39 47 -5 71 36 -18 46 37 47 -27 -68 -11 -2 5 103 53 90 0 39 -9 34 -48 -11 -10 42 59 30 61 39 27 -23 -7 54 -41 -58 -70 -24 -46 -15 -34 -36 0 -4 51 20 -10 40 50 -32 24 19 -37 125 -24 14 -89 -36 5 61 101 -45 32 70 -122 9 39 -4 65 -110 -39 -52 27 38 65 -9 81 -121 6 -83 9 123 38 116 -14 16 -15 14 -120 -13 -13 56 127 -43 57 103 61 18 26 26 -35 127 72 -80 35 -78 -10 -55 -85 116 6 9 -69 -44 -79 -44 -8 -38 67 124 -11 -7 -51 31 105 4 -6 119 49 112 91 62 -75 47 72 76 -68 79 -80 -16 8 77 48 29 -24 -7 30 -61 5 66 -59 30 -14 45 -49 -6 61 -113 -10 -116 -113 57 -2 -74 19 48 -108 -6 70 -112 102 -116 78 37 -30 -69 44 -101 28 31 44 103 -63 2 11 -58 -17 9 -67 -6 -51 22 70 -35 39 66 73 26 -26 96 14 6 57 0 -7 -50 34 53 -49 -47 -61 26 112 6 -38 9 -19 20 -93 97 69 -1 33 -33 -58 -14 64 -76 72 -20 -24 57 1 -123 -126 -45 98 52 -60 65 -10 -115 -61 34 20 12 46 -67 74 97 79 20 12 36 -47 -93 5 -44 38 -15 112 -70 -52 21 2 -18 39 91 18 74 -62 -88 -69 -36 46 -58 -27 -80 -45 70 56 -127 -108 -47 -5 22 2 -32 -90 -8 34 34 -48 -68 -45 36 -4 16 48 124 -37 64 -62 13 -83 -32 72 127 -70 21 21 -4 -99 -93 -38 -123 39 -32 34 63 -83 17 -54 12 29 -34 -2 -21 -67 4 46 11 -38 11 59 -25 48 28 -36 -10 26 -16 -125 -87 -37 18 -26 79 -25 -34 6 -44 65 44 -30 -8 -22 -6 -6 -33 12 40 9 -66 21 27 10 -45 -49 53 -82 -6 -56 -47 -39 -28 -45 -35 -110 -5 57 -10 -19 -125 -69 31 -13 -55 -58 -40 71 11 -83 45 -33 32 -30 -45 -44 -128 101 -6 126 -55 -58 71 66 28 -11 12 -88 -70 4 -26 -61 -53 4 26 20 -70 11 22 -75 -110 6 35 17 50 -83 -7 -44 -35 -73 -12 41 64 -40 10 -102 -25 37 49 -15 -97 -64 -58 53 -51 -5 120 62 26 22 -28 15 -19 -20 -33 57 51 -7 109 -50 -66 6 -99 40 66 5 56 -113 13 -42 51 -67 38 -32 104 26 36 66 -23 -76 -13 -28 -40 28 5 -57 -18 29 66 -76 -34 -16 48 -71 -27 -2 -43 67 30 23 28 -16 39 31 6 -55 39 25 -83 -4 -12 -55 -51 13 -38 -24 21 -30 20 -57 -22 19 -7 -18 20 24 3 15 -55 59 10 5 -10 58 -49 67 105 -47 8 -5 10 50 -95 -67 -68 -61 -114 16 -58 2 41 39 107 -34 -30 -87 -40 -12 10 18 -9 27 -127 -25 115 -30 -46 38 63 2 6 -85 -50 -17 -13 80 35 -27 18 -47 37 -47 -23 -89 -37 2 -5 -21 -3 -31 -10 -47 -2 -1 69 -97 -31 1 -29 49 -36 -81 35 16 3 -29 -13 -56 62 80 -29 -46 14 -38 -14 -110 51 -56 45 50 7 -79 44 0 19 56 -84 -23 -39 -59 -31 27 -34 -49 -8 111 -9 -16 66 15 -15 -59 -23 -16 13 20 -94 -17 18 -27 32 -78 60 40 53 29 -98 33 96 -52 -89 -46 0 11 11 -52 21 6 -50 19 24 121 -40 -40 -22 -2 56 65 -11 117 78 -7 -88 5 -15 -11 -84 71 12 -40 -43 -28 -127 24 15 -65 15 -42 -73 31 -112 10 -98 -67 -52 -40 34 4 94 15 -44 -49 -4 42 43 121 -21 -8 75 30 29 -7 48 -45 31 35 8 57 63 -64 26 15 33 -68 60 9 -15 -47 -4 77 61 31 68 -13 68 -59 8 46 92 -28 16 90 -1 35 -73 126 -43 39 -56 22 12 -3 -33 -113 -3 22 3 17 -28 -95 48 42 25 -49 15 34 122 123 122 23 38 63 74 48 40 59 20 70 -85 14 84 52 24 -91 -34 18 -34 -41 29 0 -17 37 -37 72 34 23 27 50 90 -2 69 60 -128 20 -82 54 -5 1 -48 -3 1 41 35 -15 -15 78 -33 27 75 -19 23 0 52 74 -19 -7 46 7 24 40 -35 2 -14 -39 108 13 66 49 -19 -80 -13 48 -65 41 -12 -91 -7 -12 -51 -78 57 20 -17 76 -96 -20 37 -17 -60 28 14 -44 -28 -102 7 -113 29 -109 -45 -37 -49 -9 -54 37 -21 7 55 44 1 -52 32 -12 -103 -45 -19 23 40 9 36 80 8 86 50 -48 -20 -24 -20 1 36 -26 35 -55 3 8 -74 5 -37 122 -23 -37 1 75 -47 -1 30 -38 -2 -48 -66 3 17 -23 24 122 -103 -39 -120 -23 40 -3 26 55 -50 -75 -2 118 -47 -24 2 -50 55 -35 -48 -105 75 8 89 32 19 -7 39 -78 40 -7 -26 6 -123 -123 -5 -31 120 21 -76 -16 -77 11 45 -3 16 34 127 36 -34 10 1 -47 -9 -121 -13 -52 84 -17 -15 -70 -35 -124 -67 -8 -78 -22 -118 -80 72 -37 49 -34 3 -124 -75 -59 -54 -58 -78 35 -122 69 -52 27 -39 53 -62 -5 80 -20 -96 -116 49 -31 -126 25 22 54 -18 1 19 -17 -97 -6 53 -80 56 -117 67 -40 32 -50 12 3 -43 11 2 86 38 22 -90 -22 23 -65 87 -9 -40 118 86 -83 -18 -28 -47 44 2 -97 9 14 -68 69 54 99 62 8 65 22 55 66 13 -39 -30 -28 2 127 -13 51 -15 4 -53 -121 78 -45 -43 -56 -29 -17 -11 -41 50 24 43 15 -66 -39 -25 -55 -20 50 86 31 -10 15 -40 -17 47 64 -70 12 14 -22 -15 20 -45 -44 -26 -6 -2 -7 3 39 -25 -90 26 -54 96 33 83 11 -7 -77 24 47 -3 -18 -11 -40 68 1 38 33 -15 61 -17 -91 36 118 -61 3 -64 -75 -37 39 -41 6 -115 22 -56 2 87 -54 -73 -57 23 -51 -88 -84 -48 -62 -52 10 -21 24 2 10 -54 -10 61 -6 -6 -73 126 22 78 -102 -38 -57 68 119 -26 -69 0 55 14 +62 59 -30 -12 -24 -55 36 -13 30 46 -48 102 -71 -12 17 54 -18 39 25 -29 25 87 68 -17 10 -45 -7 86 36 21 108 -69 15 -61 50 13 -5 36 -25 25 25 -37 29 0 -105 74 47 -11 90 42 54 5 -28 -10 4 28 -95 98 40 80 -55 -19 23 -38 58 68 12 12 118 -58 46 -11 24 64 61 44 38 58 -42 58 -4 89 53 31 -19 5 47 58 -10 43 -11 47 56 49 -29 48 -16 16 -6 -27 -1 35 13 -33 27 13 37 -38 31 44 -15 13 -46 4 32 -34 8 -12 22 -24 46 -23 19 -2 22 20 5 -32 -46 2 7 8 3 -26 52 37 33 33 40 22 9 6 -19 -45 4 22 -12 -17 33 31 46 10 33 -6 -25 20 -15 -35 29 30 -1 -11 -52 7 17 -5 15 31 -9 -4 -19 -8 -3 33 22 -3 18 -18 17 -2 15 -3 28 -11 5 24 -15 4 -32 12 -18 8 -1 1 6 -15 -83 -46 -44 28 -2 -7 -87 -14 -14 23 9 22 19 25 -42 22 -24 -23 10 -21 -13 4 -12 8 -14 -51 25 -5 -21 -16 -5 7 -14 39 -37 23 -33 -39 -29 23 -54 13 3 8 -7 7 37 2 56 21 10 -27 14 -19 -4 25 -23 0 -5 -3 29 0 -3 -26 33 0 -40 -15 49 -9 2 2 -30 2 -6 32 -8 -3 6 -16 8 0 15 7 37 -1 20 -5 22 -1 16 -59 +96 22 1 +39 16 10 11 19 15 15 10 7 6 5 4 2 4 -3 -1 13 34 49 44 43 84 -34 -24 -15 -10 -22 -26 -37 -29 -7 7 22 15 9 17 27 29 8 0 -5 7 4 -53 21 25 37 44 38 46 55 63 49 41 46 28 30 37 43 49 46 28 3 3 2 3 10 -11 -12 -8 7 20 17 10 5 13 17 27 38 48 61 67 58 46 36 40 30 28 -23 -23 -20 -16 -7 -7 -13 -22 -25 -33 -45 -46 -56 -67 -78 -101 -123 -124 -107 -112 -99 -58 -61 -28 3 20 29 30 17 -18 -65 -86 -77 -67 -39 -29 -30 -18 -18 -21 -22 -41 -75 -90 26 8 -28 -62 -81 -84 -70 -60 -57 -61 -54 -64 -63 -60 -41 -20 -6 -5 -2 -2 19 21 -14 7 25 37 43 36 28 22 23 18 16 14 20 13 2 -3 -9 -23 -4 4 15 16 1 13 15 5 4 9 5 0 4 18 19 18 20 17 9 11 20 45 73 89 104 68 92 53 31 24 16 10 14 15 22 22 26 19 5 3 4 15 14 6 -22 -16 7 7 7 2 21 30 38 51 70 81 87 94 96 99 102 109 108 110 116 101 62 72 67 22 10 11 8 2 6 11 11 10 12 12 10 14 18 11 2 -35 -80 -128 -128 -128 -77 -7 -17 -34 -46 -27 -33 -41 -41 -40 -48 -53 -61 -62 -58 -57 -51 -41 -36 -37 -32 -35 -37 -24 -10 -11 4 13 10 5 2 -1 7 10 0 14 26 34 42 55 52 67 45 45 59 107 -47 -85 -100 -65 -25 -13 1 1 -5 -7 -10 5 9 14 27 35 35 8 0 12 25 20 17 23 25 21 16 15 18 17 21 25 36 43 50 54 49 45 42 33 24 29 30 -1 -62 -36 -28 7 28 35 40 54 64 62 50 50 43 32 7 -3 -2 3 18 16 24 31 13 10 5 16 26 25 25 27 32 32 38 39 41 35 28 17 15 23 25 6 -6 -46 38 38 43 44 59 85 104 119 111 112 113 115 104 96 92 71 60 58 52 50 48 18 18 27 4 27 42 48 34 47 64 75 71 69 69 85 102 122 125 112 127 127 112 81 -77 -68 -47 -30 -19 -20 -16 -17 -15 -9 -12 -10 -10 -7 -13 -26 -29 -22 -25 -15 -11 -16 12 14 29 39 46 50 47 35 37 52 47 48 48 52 47 15 20 66 83 79 71 69 -19 0 12 10 5 12 11 15 18 17 20 25 22 17 12 3 0 -1 4 15 16 -1 127 105 62 44 39 37 26 19 32 38 27 39 38 40 35 31 17 11 30 59 92 56 1 9 16 14 19 16 18 11 9 3 -2 1 6 10 8 8 16 22 19 17 19 29 39 30 -4 -2 22 30 17 2 9 24 -1 18 24 31 12 2 -5 -4 10 15 11 -12 -58 -75 -81 -92 -62 -47 -44 -32 -24 -21 -19 -17 -8 0 11 18 16 5 -2 0 -16 24 -61 -32 1 4 4 4 13 13 20 15 6 4 -2 -7 -11 -4 -2 -11 -14 -21 -29 -23 -13 -13 5 7 4 10 10 10 15 13 4 10 0 2 3 12 7 -30 -31 -28 -35 -66 -11 -2 22 29 40 46 39 39 46 42 41 52 49 39 39 39 33 31 16 14 11 3 37 32 -9 -18 -30 -43 -42 -40 -41 -42 -34 -40 -42 -36 -33 -39 -30 20 24 -2 -42 -68 14 5 -5 -26 -32 -37 -40 -37 -42 -53 -63 -75 -80 -79 -70 -67 -63 -62 -80 -69 -52 -27 32 20 -2 -30 -39 -24 -20 -27 -31 -18 -19 -12 -17 -23 -33 -26 -14 -3 -3 -8 -4 39 -8 -31 -55 -41 -34 -30 -29 -28 -21 -4 7 7 17 32 30 24 28 52 51 42 29 21 18 -1 -20 -16 -10 -11 -19 -17 -13 -13 -13 -8 -4 2 19 20 -2 -89 -128 -108 -42 -6 127 127 75 25 13 15 9 0 5 17 27 32 35 39 45 47 37 14 29 29 15 -5 -18 -55 -67 -47 -21 -12 -16 -24 -21 -28 -33 -16 -19 -22 -14 -7 -13 2 24 32 32 13 -62 -79 -80 -88 -95 -89 -85 -67 -52 -38 -31 -28 -31 -23 -12 -6 -15 -26 -31 -20 -7 -11 15 -22 -29 -15 -15 -23 -37 -39 -36 -33 -32 -23 -28 -25 -20 -16 -16 -17 -3 7 16 20 87 70 31 -5 -4 -7 -33 -65 -73 -69 -72 -30 -19 -36 -72 -82 -54 -5 10 7 23 5 -18 -9 18 32 42 39 36 35 34 38 37 41 47 51 60 59 57 27 3 13 -8 -126 -64 -35 -17 -32 -42 -31 -31 -20 -30 -39 -37 -43 -42 -43 -48 -63 -62 -58 -65 -46 -24 -44 28 18 18 23 29 33 35 31 21 10 2 2 6 12 15 15 18 -20 -87 -79 -56 -33 30 27 22 29 39 48 63 60 34 17 20 20 21 21 24 31 26 13 1 10 14 23 47 62 72 97 81 73 42 48 85 127 127 127 127 127 118 74 61 43 24 38 31 16 1 -34 -55 -46 -44 -37 -28 -15 -8 -10 -12 -15 -10 -7 -7 -3 1 -3 6 25 47 124 -31 -52 -56 -52 -43 -41 -40 -35 -24 -27 -29 -29 -16 -10 -8 9 33 25 10 2 -19 -115 40 48 44 53 31 17 38 40 33 18 16 21 33 43 40 36 37 24 25 24 25 20 3 24 38 26 16 7 3 6 15 15 20 19 10 -1 1 -1 1 5 9 18 9 16 44 62 46 41 43 58 71 72 68 73 81 86 100 102 87 78 66 60 97 120 127 118 -27 -40 -41 -43 -53 -51 -53 -60 -53 -43 -45 -36 -40 -50 -71 -93 -93 -78 -82 -65 -53 -85 -27 14 52 95 117 115 96 67 36 12 -3 2 12 8 -4 -17 -17 -16 -21 -7 -1 -26 -46 -60 -78 -96 -96 -86 -80 -68 -64 -63 -58 -64 -62 -51 -29 -15 -19 -4 0 -23 -49 -55 -25 -26 -17 -6 -1 0 2 1 -2 4 15 29 36 36 25 20 25 32 30 28 20 -3 3 16 14 16 7 -7 -9 -12 1 8 19 26 26 19 5 -7 -26 -40 -60 -106 -127 -128 4 12 16 21 16 11 15 12 -5 -22 -34 -48 -57 -72 -82 -79 -68 -59 -44 -25 -13 -4 30 15 24 41 49 54 56 56 54 51 40 42 41 35 28 23 21 19 14 15 3 2 -4 -29 -55 -67 -70 -77 -74 -80 -90 -89 -91 -88 -84 -74 -45 -34 -21 -11 12 12 25 27 -54 -36 -46 -45 -39 -38 -48 -59 -56 -41 -25 -7 -5 -1 1 0 -5 0 9 9 -6 -19 3 19 22 15 18 10 13 6 -13 -38 -62 -75 -91 -107 -128 -128 -128 -128 -116 -127 -119 -76 12 26 51 74 81 76 65 62 57 65 68 65 70 64 51 45 46 54 45 39 32 20 -74 -60 -49 -49 -59 -63 -61 -55 -56 -56 -54 -48 -48 -48 -50 -50 -51 -58 -46 -33 -39 -42 22 11 -17 -43 -48 -50 -37 -27 -18 -18 -18 -19 -20 -22 -22 -25 -21 -19 -10 -9 1 7 2 -28 -57 -60 -44 -40 -35 -28 -41 -57 -52 -66 -52 -49 -63 -60 -31 -4 -16 -41 -45 -81 -104 -76 -45 -36 -32 -30 -28 -28 -34 -35 -43 -33 -38 -35 -32 -31 -38 -67 -81 -49 -15 46 8 -8 -20 -15 -2 -5 -11 -7 7 13 9 2 -13 -32 -60 -76 -91 -107 -124 -104 -66 -25 -4 -28 -30 -26 -7 7 5 -13 -40 -64 -89 -81 -65 -56 -40 -31 -28 -21 -10 -11 3 -14 -25 -57 -79 -68 -69 -63 -62 -56 -32 -23 -29 -23 -26 -22 -28 -35 -40 -41 -47 -53 -62 -71 -23 -21 -12 -35 -50 -61 -67 -79 -80 -57 -28 -21 -3 14 25 23 18 -4 -60 -53 -29 -25 -40 -37 -48 -45 -44 -39 -35 -36 -47 -49 -26 -25 -18 -13 3 6 7 14 33 27 31 43 0 -3 7 -3 -7 -3 3 12 16 20 27 27 33 34 43 60 62 -22 -124 -128 -128 -127 -13 -19 -17 -10 -9 -16 -11 -2 3 -1 2 -2 0 3 13 20 19 9 1 -8 -31 -18 -8 -18 0 13 37 51 58 73 72 54 30 16 17 12 4 0 4 8 20 0 -17 -31 48 23 11 10 27 46 55 43 33 33 34 40 39 39 43 47 43 3 -20 12 61 80 59 33 0 -6 -6 -6 -14 -8 10 20 21 30 34 27 19 17 25 41 53 72 82 56 33 36 31 32 54 65 58 60 54 42 41 31 16 1 8 19 27 39 47 45 35 33 110 127 49 36 43 45 44 49 45 53 49 67 59 62 71 74 73 68 62 76 80 90 57 88 98 80 53 26 19 14 12 15 19 18 23 33 36 35 35 37 27 6 3 3 28 34 31 41 41 43 36 27 34 41 26 37 34 33 41 42 42 39 29 30 33 37 -5 38 76 105 107 87 75 66 62 62 55 32 19 -1 -35 -55 -58 -61 -37 -19 -9 -17 -44 -50 -58 -42 -39 -37 -34 -36 -47 -37 -33 -41 -38 -34 -40 -46 -46 -51 -49 -53 -84 -128 -16 -75 -79 -36 -5 -2 -4 -6 -13 -31 -43 -46 -46 -44 -26 -12 -11 -10 10 38 59 71 -77 -82 -101 -119 -128 -128 -128 -128 -125 -113 -106 -88 -89 -88 -82 -77 -74 -64 -44 -32 -13 -13 -15 15 13 0 -21 -31 -34 -41 -47 -44 -40 -40 -48 -52 -50 -53 -59 -66 -68 -79 -97 -42 69 104 90 59 25 13 8 21 13 15 28 22 25 32 27 19 8 3 0 1 1 -16 78 76 -9 -11 3 10 12 1 -13 -11 -16 -23 -28 -30 -36 -40 -40 -48 -56 -63 -60 -25 -65 -51 -43 -33 -31 -25 -24 -22 -13 0 -2 -6 -11 -3 -7 -9 -16 -23 -19 -31 -28 3 44 33 25 32 33 34 35 40 47 49 52 52 46 40 36 35 26 16 30 40 59 57 29 37 29 46 43 38 40 45 45 48 44 33 19 8 4 0 4 13 7 19 3 -38 12 19 19 3 14 27 34 29 21 17 2 1 1 -4 -16 -19 -9 14 14 10 -13 -12 40 42 56 41 27 31 38 35 28 27 18 22 33 36 35 35 32 26 19 20 19 12 -84 -34 -22 -14 -7 -8 -16 -12 -8 -4 2 -1 -5 -6 -4 -17 -34 -53 -40 -18 3 10 10 -19 -66 -66 -57 -64 -83 -93 -91 -98 -108 -101 -104 -107 -112 -120 -104 -36 43 33 -8 -128 30 10 -34 -40 -50 -51 -47 -34 -29 -29 -30 -29 -38 -38 -39 -41 -40 -51 -46 -24 -26 -29 43 38 27 22 17 17 15 17 12 11 15 16 13 12 14 19 22 36 33 24 11 -20 -108 -128 -127 -122 -100 -87 -79 -74 -83 -78 -65 -62 -57 -40 -25 -19 -18 -18 -15 -5 6 -8 +-3 22 24 47 33 34 8 3 -7 -8 4 4 18 20 11 -16 -26 -12 -34 -23 -19 -13 +24 1 1 +-128 -35 127 127 -99 -128 127 -128 -125 123 -103 127 127 -128 127 -128 -128 -128 93 -114 -128 -128 127 -128 +127 diff --git a/public/models/kannada.quant.onnx b/public/models/kannada.quant.onnx new file mode 100644 index 00000000..8c0819ec Binary files /dev/null and b/public/models/kannada.quant.onnx differ diff --git a/public/models/kannada.vocab b/public/models/kannada.vocab new file mode 100644 index 00000000..8e442aed --- /dev/null +++ b/public/models/kannada.vocab @@ -0,0 +1,258 @@ +0 +256 + +▁ಮ +▁ಸ +ತ್ +ಲ್ +▁ಕ +ಿದ +ಾರ +ನ್ +ಲ್ಲ +▁ನ +ಂದ +▁ಅ +ರು +ಾಗ +▁ಪ +▁ಹ +್ರ +ತ್ತ +▁ಬ +ನ್ನ +ಿಸ +ಗಳ +್ಯ +ಕ್ +ರ್ +▁ವ +ಗೆ +ಲ್ಲಿ +್ದ +ನ್ನು +ರಿ +▁ಆ +▁ತ +ೆಯ +▁ಎ +▁ಇ +ಿದ್ದ +ಸ್ +ಿಯ +ಿಕ +ುವ +▁ಮಾ +್ಟ +ುತ್ತ +▁ರ +▁ಪ್ರ +ದು +▁ಜ +ಾಗಿ +ಂತ +ಿದೆ +ಕ್ಕ +▁ದ +ಂದು +ಿನ +▁ಗ +ರೆ +ಂಡ +ವು +▁ಶ +ಾನ +▁ವಿ +ತ್ತು +ಾಯ +ತಿ +ಾದ +▁ಮಾಡ +▁ನಿ +ದಲ್ಲಿ +▁ಈ +▁ಅವ +ಿಗೆ +ಲು +ಟ್ಟ +ಗಳು +ಾರೆ +▁ಚ +ಕ್ಷ +್ಮ +▁ಉ +▁ಸಂ +▁ನೀ +ಿಂದ +ಾಲ +ಿತ +▁ಭ +▁ಒ +ಾಮ +ದೆ +▁ಮತ್ತು +▁ಯ +ತ್ರ +ಕ್ಕೆ +▁ಮು +ನೆ +ಾವ +ಡಿ +ಿದ್ದಾರೆ +▁ಸ್ +ಂಗ +▁ಎಂದು +ಂಬ +ರುವ +ಡೆ +ೇಕ +ಿಲ್ಲ +ಳ್ +ಮ್ಮ +ೇಶ +ಗಳನ್ನು +ಾಜ +ಳ್ಳ +ಚ್ +ಷ್ಟ +ಪ್ +ಿವ +ಟ್ +ಾರ್ +ವಾಗಿ +ುದ +ವನ್ನು +ರಿಸ +ಾಗಿದೆ +ಾರಿ +ೊಂಡ +ೇಳ +▁ಕಾರ +ಾಸ +ುದು +ನಾ +▁ಹೆ +ಚ್ಚ +▁ಹೊ +▁ಕೆ +▁ಬೆ +ಲೆ +ಬೇಕ +ತೆ +ಡ್ +ಿದರು +ಾಣ +▁ಸಮ +್ಯಾ +▁ಇದ +ಿಸಿ +▁ಆದ +ೋಗ +▁ನೀಡ +▁ಲ +ಧ್ಯ +ೊಳ್ಳ +▁ಬಿ +ವಿ +▁ಕು +ಬ್ +ರಿಗೆ +ತ್ಯ +▁ಮೂ +▁ಹಾಗ +ುತ್ತದೆ +ವೆ +▁ಸಾ +ಂತೆ +ರಣ +▁ಕೊ +ಕಾರ +ನು +ಪ್ಪ +ಗ್ +ೆಯಲ್ಲಿ +ವಾ +▁ಸಿ +▁ರಾಜ +ಿಸುವ +್ಣ +▁ತಿ +ಡು +ೆಗೆ +ಲಿ +▁ಹೇಳ +್ಧ +ಗಳಲ್ಲಿ +▁ +್ +ಿ +ರ +ು +ಾ +ದ +ನ +ೆ +ತ +ಕ +ಲ +ಗ +ವ +ಸ +ಯ +ಮ +ಂ +ಳ +ಪ +ಡ +ಬ +ಹ +ೇ +ಟ +ಅ +ೂ +ಜ +ೊ +ೀ +ಚ +ಶ +ಣ +ೋ +ಷ +ಎ +ಧ +ಆ +ಇ +ಭ +ಥ +ೈ +ಖ +ಈ +ಉ +ಒ +ೃ +ಫ +ೌ +ಘ +ಠ +ಏ +ಐ +ಞ +ಓ +ಛ +ಊ +ೕ +ಢ +ಃ +ಔ +ಝ +ಋ +಼ +ಙ +ೖ +ಱ +ಽ +ೞ +ಌ +಻ +ೄ +ೠ \ No newline at end of file diff --git a/public/models/sherpa-onnx-wasm-main-vad-asr.data b/public/models/sherpa-onnx-wasm-main-vad-asr.data new file mode 100644 index 00000000..65f67aad Binary files /dev/null and b/public/models/sherpa-onnx-wasm-main-vad-asr.data differ diff --git a/public/models/tamil.quant.onnx b/public/models/tamil.quant.onnx new file mode 100644 index 00000000..088e047d Binary files /dev/null and b/public/models/tamil.quant.onnx differ diff --git a/public/models/tamil.vocab b/public/models/tamil.vocab new file mode 100644 index 00000000..54e34c53 --- /dev/null +++ b/public/models/tamil.vocab @@ -0,0 +1,258 @@ +0 +256 + +்க +்த +ம் +ன் +▁ப +ல் +க்க +▁க +்ட +▁வ +த்த +▁ம +்ப +▁அ +ும் +▁த +▁ச +ிய +ள் +ர் +▁இ +ரு +ந்த +ப்ப +து +ட்ட +▁ந +ில் +▁எ +ங்க +ைய +ாக +ிற +ின் +டு +▁உ +க்கு +ிர +று +்ச +ிக +ார +ண்ட +ற் +த்து +ள்ள +ில +ான +▁ஆ +▁மு +ற்ற +▁செ +டி +▁என் +ார் +ர்க +லை +▁வி +▁ஒ +ட்டு +வி +ப் +ந்து +ரி +ளை +ால் +தி +▁கு +ிரு +வு +▁இரு +ல்ல +▁அவ +▁போ +க் +▁கொ +ச்ச +▁செய +ின +ான் +த் +▁கா +▁அத +▁மா +▁பெ +றி +மை +▁வே +ளு +▁ஒரு +னை +த்தில் +▁இந்த +க்கும் +ப்பு +ாய +ையில் +ங்கள் +▁தொ +டை +ற்க +ம்ப +ரா +ர்கள் +ண் +ன்ற +ுவ +ால +ஸ் +ிக்க +ாவ +டிய +▁ஏ +▁பு +▁என +▁வெ +ண்டு +ாத +ன்ன +▁கூ +ிறது +மி +ாள +மாக +ச் +கள் +னர் +ாம் +றை +கு +வே +ழு +்கள் +▁பிர +▁உள்ள +▁மற்ற +ப்பட்ட +ங்கள +▁பொ +▁தெ +த்தை +ரிய +ற்ப +▁பா +டுத்த +▁நட +ரை +மான +▁தே +ளுக்கு +ரச +ட்ச +ையும் +்த்த +திய +ிட +▁நீ +வும் +ாம +வர் +▁என்று +▁மற்றும் +▁இத +▁வா +ரும் +ின்ற +வை +கள +▁மே +ற்று +▁நா +மு +▁ர +▁என்ற +ண்டும் +வத +▁வழ +ண்ண +டும் +▁பே +டன் +▁செய் +வில் +னு +▁சு +ன்று +▁அரச +ர்கள +▁சொ +▁செய்த +ளி +▁தொட +▁ஜ +மா +▁கோ +▁வரு +ிகள் +டுக +ழ் +ிட்ட +் +▁ +க +ு +த +ி +ப +ர +ம +ட +ா +வ +ன +ல +ை +ய +ள +ற +ச +ந +அ +ே +ண +இ +ெ +ோ +எ +ங +ொ +ழ +ீ +உ +ூ +ஆ +ஒ +ஸ +ஜ +ஏ +ஷ +ஞ +ஹ +ஊ +ஓ +ஐ +ஈ +ஃ +ௌ +ஶ +ஂ +ஔ +ௐ +ௗ +஀ +஑ +஢ \ No newline at end of file diff --git a/public/sherpa.wasm/initShrepa.js b/public/sherpa.wasm/initShrepa.js new file mode 100644 index 00000000..ad2b0a20 --- /dev/null +++ b/public/sherpa.wasm/initShrepa.js @@ -0,0 +1,25 @@ +const loadSherpaModule = async () => { + try { + console.log('inited!'); + if (!Module || typeof Module !== 'object') { + throw new Error('Module is not properly initialized'); + } + window.sherpaModule = Module; + Module.onRuntimeInitialized = function() { + console.log('inited!'); + console.log('Sherpa WASM module initialized successfully'); + + if (typeof OfflineRecognizer !== 'function' || typeof createVad !== 'function') { + throw new Error('Required functions not found in WASM module'); + } + window.OfflineRecognizer = OfflineRecognizer; + window.createVad = createVad; + }; + } catch (error) { + console.error('Failed to load WASM module', error); + console.error('Failed to load Sherpa WASM module:', error.message); + throw error; + } +}; + +loadSherpaModule(); \ No newline at end of file diff --git a/public/sherpa.wasm/sherpa-onnx-asr.js b/public/sherpa.wasm/sherpa-onnx-asr.js new file mode 100644 index 00000000..f0c34c97 --- /dev/null +++ b/public/sherpa.wasm/sherpa-onnx-asr.js @@ -0,0 +1,1142 @@ +function freeConfig(config, Module) { + if ('buffer' in config) { + Module._free(config.buffer); + } + + if ('config' in config) { + freeConfig(config.config, Module) + } + + if ('transducer' in config) { + freeConfig(config.transducer, Module) + } + + if ('paraformer' in config) { + freeConfig(config.paraformer, Module) + } + + if ('ctc' in config) { + freeConfig(config.ctc, Module) + } + + if ('feat' in config) { + freeConfig(config.feat, Module) + } + + if ('model' in config) { + freeConfig(config.model, Module) + } + + if ('nemoCtc' in config) { + freeConfig(config.nemoCtc, Module) + } + + if ('whisper' in config) { + freeConfig(config.whisper, Module) + } + + if ('moonshine' in config) { + freeConfig(config.moonshine, Module) + } + + if ('tdnn' in config) { + freeConfig(config.tdnn, Module) + } + + if ('senseVoice' in config) { + freeConfig(config.senseVoice, Module) + } + + if ('lm' in config) { + freeConfig(config.lm, Module) + } + + if ('ctcFstDecoder' in config) { + freeConfig(config.ctcFstDecoder, Module) + } + + Module._free(config.ptr); +} + +// The user should free the returned pointers +function initSherpaOnnxOnlineTransducerModelConfig(config, Module) { + const encoderLen = Module.lengthBytesUTF8(config.encoder || '') + 1; + const decoderLen = Module.lengthBytesUTF8(config.decoder || '') + 1; + const joinerLen = Module.lengthBytesUTF8(config.joiner || '') + 1; + + const n = encoderLen + decoderLen + joinerLen; + + const buffer = Module._malloc(n); + + const len = 3 * 4; // 3 pointers + const ptr = Module._malloc(len); + + let offset = 0; + Module.stringToUTF8(config.encoder || '', buffer + offset, encoderLen); + offset += encoderLen; + + Module.stringToUTF8(config.decoder || '', buffer + offset, decoderLen); + offset += decoderLen; + + Module.stringToUTF8(config.joiner || '', buffer + offset, joinerLen); + + offset = 0; + Module.setValue(ptr, buffer + offset, 'i8*'); + offset += encoderLen; + + Module.setValue(ptr + 4, buffer + offset, 'i8*'); + offset += decoderLen; + + Module.setValue(ptr + 8, buffer + offset, 'i8*'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOnlineParaformerModelConfig(config, Module) { + const encoderLen = Module.lengthBytesUTF8(config.encoder || '') + 1; + const decoderLen = Module.lengthBytesUTF8(config.decoder || '') + 1; + + const n = encoderLen + decoderLen; + const buffer = Module._malloc(n); + + const len = 2 * 4; // 2 pointers + const ptr = Module._malloc(len); + + let offset = 0; + Module.stringToUTF8(config.encoder || '', buffer + offset, encoderLen); + offset += encoderLen; + + Module.stringToUTF8(config.decoder || '', buffer + offset, decoderLen); + + offset = 0; + Module.setValue(ptr, buffer + offset, 'i8*'); + offset += encoderLen; + + Module.setValue(ptr + 4, buffer + offset, 'i8*'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOnlineZipformer2CtcModelConfig(config, Module) { + const n = Module.lengthBytesUTF8(config.model || '') + 1; + const buffer = Module._malloc(n); + + const len = 1 * 4; // 1 pointer + const ptr = Module._malloc(len); + + Module.stringToUTF8(config.model || '', buffer, n); + + Module.setValue(ptr, buffer, 'i8*'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOnlineModelConfig(config, Module) { + if (!('transducer' in config)) { + config.transducer = { + encoder: '', + decoder: '', + joiner: '', + }; + } + + if (!('paraformer' in config)) { + config.paraformer = { + encoder: '', + decoder: '', + }; + } + + if (!('zipformer2Ctc' in config)) { + config.zipformer2Ctc = { + model: '', + }; + } + + if (!('tokensBuf' in config)) { + config.tokensBuf = ''; + } + + if (!('tokensBufSize' in config)) { + config.tokensBufSize = 0; + } + + const transducer = + initSherpaOnnxOnlineTransducerModelConfig(config.transducer, Module); + + const paraformer = + initSherpaOnnxOnlineParaformerModelConfig(config.paraformer, Module); + + const ctc = initSherpaOnnxOnlineZipformer2CtcModelConfig( + config.zipformer2Ctc, Module); + + const len = transducer.len + paraformer.len + ctc.len + 9 * 4; + const ptr = Module._malloc(len); + + let offset = 0; + Module._CopyHeap(transducer.ptr, transducer.len, ptr + offset); + offset += transducer.len; + + Module._CopyHeap(paraformer.ptr, paraformer.len, ptr + offset); + offset += paraformer.len; + + Module._CopyHeap(ctc.ptr, ctc.len, ptr + offset); + offset += ctc.len; + + const tokensLen = Module.lengthBytesUTF8(config.tokens || '') + 1; + const providerLen = Module.lengthBytesUTF8(config.provider || 'cpu') + 1; + const modelTypeLen = Module.lengthBytesUTF8(config.modelType || '') + 1; + const modelingUnitLen = Module.lengthBytesUTF8(config.modelingUnit || '') + 1; + const bpeVocabLen = Module.lengthBytesUTF8(config.bpeVocab || '') + 1; + const tokensBufLen = Module.lengthBytesUTF8(config.tokensBuf || '') + 1; + + const bufferLen = tokensLen + providerLen + modelTypeLen + modelingUnitLen + + bpeVocabLen + tokensBufLen; + const buffer = Module._malloc(bufferLen); + + offset = 0; + Module.stringToUTF8(config.tokens || '', buffer, tokensLen); + offset += tokensLen; + + Module.stringToUTF8(config.provider || 'cpu', buffer + offset, providerLen); + offset += providerLen; + + Module.stringToUTF8(config.modelType || '', buffer + offset, modelTypeLen); + offset += modelTypeLen; + + Module.stringToUTF8( + config.modelingUnit || '', buffer + offset, modelingUnitLen); + offset += modelingUnitLen; + + Module.stringToUTF8(config.bpeVocab || '', buffer + offset, bpeVocabLen); + offset += bpeVocabLen; + + Module.stringToUTF8(config.tokensBuf || '', buffer + offset, tokensBufLen); + offset += tokensBufLen; + + offset = transducer.len + paraformer.len + ctc.len; + Module.setValue(ptr + offset, buffer, 'i8*'); // tokens + offset += 4; + + Module.setValue(ptr + offset, config.numThreads || 1, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, buffer + tokensLen, 'i8*'); // provider + offset += 4; + + Module.setValue(ptr + offset, config.debug || 0, 'i32'); + offset += 4; + + Module.setValue( + ptr + offset, buffer + tokensLen + providerLen, 'i8*'); // modelType + offset += 4; + + Module.setValue( + ptr + offset, buffer + tokensLen + providerLen + modelTypeLen, + 'i8*'); // modelingUnit + offset += 4; + + Module.setValue( + ptr + offset, + buffer + tokensLen + providerLen + modelTypeLen + modelingUnitLen, + 'i8*'); // bpeVocab + offset += 4; + + Module.setValue( + ptr + offset, + buffer + tokensLen + providerLen + modelTypeLen + modelingUnitLen + + bpeVocabLen, + 'i8*'); // tokens_buf + offset += 4; + + Module.setValue(ptr + offset, config.tokensBufSize || 0, 'i32'); + offset += 4; + + return { + buffer: buffer, ptr: ptr, len: len, transducer: transducer, + paraformer: paraformer, ctc: ctc + } +} + +function initSherpaOnnxFeatureConfig(config, Module) { + const len = 2 * 4; // 2 pointers + const ptr = Module._malloc(len); + + Module.setValue(ptr, config.sampleRate || 16000, 'i32'); + Module.setValue(ptr + 4, config.featureDim || 80, 'i32'); + return {ptr: ptr, len: len}; +} + +function initSherpaOnnxOnlineCtcFstDecoderConfig(config, Module) { + const len = 2 * 4; + const ptr = Module._malloc(len); + + const graphLen = Module.lengthBytesUTF8(config.graph || '') + 1; + const buffer = Module._malloc(graphLen); + Module.stringToUTF8(config.graph, buffer, graphLen); + + Module.setValue(ptr, buffer, 'i8*'); + Module.setValue(ptr + 4, config.maxActive || 3000, 'i32'); + return {ptr: ptr, len: len, buffer: buffer}; +} + +function initSherpaOnnxOnlineRecognizerConfig(config, Module) { + if (!('featConfig' in config)) { + config.featConfig = { + sampleRate: 16000, + featureDim: 80, + }; + } + + if (!('ctcFstDecoderConfig' in config)) { + config.ctcFstDecoderConfig = { + graph: '', + maxActive: 3000, + }; + } + + if (!('hotwordsBuf' in config)) { + config.hotwordsBuf = ''; + } + + if (!('hotwordsBufSize' in config)) { + config.hotwordsBufSize = 0; + } + + const feat = initSherpaOnnxFeatureConfig(config.featConfig, Module); + const model = initSherpaOnnxOnlineModelConfig(config.modelConfig, Module); + const ctcFstDecoder = initSherpaOnnxOnlineCtcFstDecoderConfig( + config.ctcFstDecoderConfig, Module) + + const len = feat.len + model.len + 8 * 4 + ctcFstDecoder.len + 5 * 4; + const ptr = Module._malloc(len); + + let offset = 0; + Module._CopyHeap(feat.ptr, feat.len, ptr + offset); + offset += feat.len; + + Module._CopyHeap(model.ptr, model.len, ptr + offset); + offset += model.len; + + const decodingMethodLen = + Module.lengthBytesUTF8(config.decodingMethod || 'greedy_search') + 1; + const hotwordsFileLen = Module.lengthBytesUTF8(config.hotwordsFile || '') + 1; + const ruleFstsFileLen = Module.lengthBytesUTF8(config.ruleFsts || '') + 1; + const ruleFarsFileLen = Module.lengthBytesUTF8(config.ruleFars || '') + 1; + const hotwordsBufLen = Module.lengthBytesUTF8(config.hotwordsBuf || '') + 1; + const bufferLen = decodingMethodLen + hotwordsFileLen + ruleFstsFileLen + + ruleFarsFileLen + hotwordsBufLen; + const buffer = Module._malloc(bufferLen); + + offset = 0; + Module.stringToUTF8( + config.decodingMethod || 'greedy_search', buffer, decodingMethodLen); + offset += decodingMethodLen; + + Module.stringToUTF8( + config.hotwordsFile || '', buffer + offset, hotwordsFileLen); + offset += hotwordsFileLen; + + Module.stringToUTF8(config.ruleFsts || '', buffer + offset, ruleFstsFileLen); + offset += ruleFstsFileLen; + + Module.stringToUTF8(config.ruleFars || '', buffer + offset, ruleFarsFileLen); + offset += ruleFarsFileLen; + + Module.stringToUTF8( + config.hotwordsBuf || '', buffer + offset, hotwordsBufLen); + offset += hotwordsBufLen; + + offset = feat.len + model.len; + Module.setValue(ptr + offset, buffer, 'i8*'); // decoding method + offset += 4; + + Module.setValue(ptr + offset, config.maxActivePaths || 4, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, config.enableEndpoint || 0, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, config.rule1MinTrailingSilence || 2.4, 'float'); + offset += 4; + + Module.setValue(ptr + offset, config.rule2MinTrailingSilence || 1.2, 'float'); + offset += 4; + + Module.setValue(ptr + offset, config.rule3MinUtteranceLength || 20, 'float'); + offset += 4; + + Module.setValue(ptr + offset, buffer + decodingMethodLen, 'i8*'); + offset += 4; + + Module.setValue(ptr + offset, config.hotwordsScore || 1.5, 'float'); + offset += 4; + + Module._CopyHeap(ctcFstDecoder.ptr, ctcFstDecoder.len, ptr + offset); + offset += ctcFstDecoder.len; + + Module.setValue( + ptr + offset, buffer + decodingMethodLen + hotwordsFileLen, 'i8*'); + offset += 4; + + Module.setValue( + ptr + offset, + buffer + decodingMethodLen + hotwordsFileLen + ruleFstsFileLen, 'i8*'); + offset += 4; + + Module.setValue(ptr + offset, config.blankPenalty || 0, 'float'); + offset += 4; + + Module.setValue( + ptr + offset, + buffer + decodingMethodLen + hotwordsFileLen + ruleFstsFileLen + + ruleFarsFileLen, + 'i8*'); + offset += 4; + + Module.setValue(ptr + offset, config.hotwordsBufSize || 0, 'i32'); + offset += 4; + + return { + buffer: buffer, ptr: ptr, len: len, feat: feat, model: model, + ctcFstDecoder: ctcFstDecoder + } +} + +function createOnlineRecognizer(Module, myConfig) { + const onlineTransducerModelConfig = { + encoder: '', + decoder: '', + joiner: '', + }; + + const onlineParaformerModelConfig = { + encoder: '', + decoder: '', + }; + + const onlineZipformer2CtcModelConfig = { + model: '', + }; + + let type = 0; + + switch (type) { + case 0: + // transducer + onlineTransducerModelConfig.encoder = './encoder.onnx'; + onlineTransducerModelConfig.decoder = './decoder.onnx'; + onlineTransducerModelConfig.joiner = './joiner.onnx'; + break; + case 1: + // paraformer + onlineParaformerModelConfig.encoder = './encoder.onnx'; + onlineParaformerModelConfig.decoder = './decoder.onnx'; + break; + case 2: + // ctc + onlineZipformer2CtcModelConfig.model = './encoder.onnx'; + break; + } + + + const onlineModelConfig = { + transducer: onlineTransducerModelConfig, + paraformer: onlineParaformerModelConfig, + zipformer2Ctc: onlineZipformer2CtcModelConfig, + tokens: './tokens.txt', + numThreads: 1, + provider: 'cpu', + debug: 1, + modelType: '', + modelingUnit: 'cjkchar', + bpeVocab: '', + }; + + const featureConfig = { + sampleRate: 16000, + featureDim: 80, + }; + + let recognizerConfig = { + featConfig: featureConfig, + modelConfig: onlineModelConfig, + decodingMethod: 'greedy_search', + maxActivePaths: 4, + enableEndpoint: 1, + rule1MinTrailingSilence: 2.4, + rule2MinTrailingSilence: 1.2, + rule3MinUtteranceLength: 20, + hotwordsFile: '', + hotwordsScore: 1.5, + ctcFstDecoderConfig: { + graph: '', + maxActive: 3000, + }, + ruleFsts: '', + ruleFars: '', + }; + if (myConfig) { + recognizerConfig = myConfig; + } + + return new OnlineRecognizer(recognizerConfig, Module); +} + +function initSherpaOnnxOfflineTransducerModelConfig(config, Module) { + const encoderLen = Module.lengthBytesUTF8(config.encoder || '') + 1; + const decoderLen = Module.lengthBytesUTF8(config.decoder || '') + 1; + const joinerLen = Module.lengthBytesUTF8(config.joiner || '') + 1; + + const n = encoderLen + decoderLen + joinerLen; + + const buffer = Module._malloc(n); + + const len = 3 * 4; // 3 pointers + const ptr = Module._malloc(len); + + let offset = 0; + Module.stringToUTF8(config.encoder || '', buffer + offset, encoderLen); + offset += encoderLen; + + Module.stringToUTF8(config.decoder || '', buffer + offset, decoderLen); + offset += decoderLen; + + Module.stringToUTF8(config.joiner || '', buffer + offset, joinerLen); + + offset = 0; + Module.setValue(ptr, buffer + offset, 'i8*'); + offset += encoderLen; + + Module.setValue(ptr + 4, buffer + offset, 'i8*'); + offset += decoderLen; + + Module.setValue(ptr + 8, buffer + offset, 'i8*'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineParaformerModelConfig(config, Module) { + const n = Module.lengthBytesUTF8(config.model || '') + 1; + + const buffer = Module._malloc(n); + + const len = 1 * 4; // 1 pointer + const ptr = Module._malloc(len); + + Module.stringToUTF8(config.model || '', buffer, n); + + Module.setValue(ptr, buffer, 'i8*'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineNemoEncDecCtcModelConfig(config, Module) { + const n = Module.lengthBytesUTF8(config.model || '') + 1; + + const buffer = Module._malloc(n); + + const len = 1 * 4; // 1 pointer + const ptr = Module._malloc(len); + + Module.stringToUTF8(config.model || '', buffer, n); + + Module.setValue(ptr, buffer, 'i8*'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineWhisperModelConfig(config, Module) { + const encoderLen = Module.lengthBytesUTF8(config.encoder || '') + 1; + const decoderLen = Module.lengthBytesUTF8(config.decoder || '') + 1; + const languageLen = Module.lengthBytesUTF8(config.language || '') + 1; + const taskLen = Module.lengthBytesUTF8(config.task || '') + 1; + + const n = encoderLen + decoderLen + languageLen + taskLen; + const buffer = Module._malloc(n); + + const len = 5 * 4; // 4 pointers + 1 int32 + const ptr = Module._malloc(len); + + let offset = 0; + Module.stringToUTF8(config.encoder || '', buffer + offset, encoderLen); + offset += encoderLen; + + Module.stringToUTF8(config.decoder || '', buffer + offset, decoderLen); + offset += decoderLen; + + Module.stringToUTF8(config.language || '', buffer + offset, languageLen); + offset += languageLen; + + Module.stringToUTF8(config.task || '', buffer + offset, taskLen); + + offset = 0; + Module.setValue(ptr, buffer + offset, 'i8*'); + offset += encoderLen; + + Module.setValue(ptr + 4, buffer + offset, 'i8*'); + offset += decoderLen; + + Module.setValue(ptr + 8, buffer + offset, 'i8*'); + offset += languageLen; + + Module.setValue(ptr + 12, buffer + offset, 'i8*'); + offset += taskLen; + + Module.setValue(ptr + 16, config.tailPaddings || 2000, 'i32'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineMoonshineModelConfig(config, Module) { + const preprocessorLen = Module.lengthBytesUTF8(config.preprocessor || '') + 1; + const encoderLen = Module.lengthBytesUTF8(config.encoder || '') + 1; + const uncachedDecoderLen = + Module.lengthBytesUTF8(config.uncachedDecoder || '') + 1; + const cachedDecoderLen = + Module.lengthBytesUTF8(config.cachedDecoder || '') + 1; + + const n = + preprocessorLen + encoderLen + uncachedDecoderLen + cachedDecoderLen; + const buffer = Module._malloc(n); + + const len = 4 * 4; // 4 pointers + const ptr = Module._malloc(len); + + let offset = 0; + Module.stringToUTF8( + config.preprocessor || '', buffer + offset, preprocessorLen); + offset += preprocessorLen; + + Module.stringToUTF8(config.encoder || '', buffer + offset, encoderLen); + offset += encoderLen; + + Module.stringToUTF8( + config.uncachedDecoder || '', buffer + offset, uncachedDecoderLen); + offset += uncachedDecoderLen; + + Module.stringToUTF8( + config.cachedDecoder || '', buffer + offset, cachedDecoderLen); + offset += cachedDecoderLen; + + offset = 0; + Module.setValue(ptr, buffer + offset, 'i8*'); + offset += preprocessorLen; + + Module.setValue(ptr + 4, buffer + offset, 'i8*'); + offset += encoderLen; + + Module.setValue(ptr + 8, buffer + offset, 'i8*'); + offset += uncachedDecoderLen; + + Module.setValue(ptr + 12, buffer + offset, 'i8*'); + offset += cachedDecoderLen; + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineTdnnModelConfig(config, Module) { + const n = Module.lengthBytesUTF8(config.model || '') + 1; + const buffer = Module._malloc(n); + + const len = 1 * 4; // 1 pointer + const ptr = Module._malloc(len); + + Module.stringToUTF8(config.model || '', buffer, n); + + Module.setValue(ptr, buffer, 'i8*'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineSenseVoiceModelConfig(config, Module) { + const modelLen = Module.lengthBytesUTF8(config.model || '') + 1; + const languageLen = Module.lengthBytesUTF8(config.language || '') + 1; + + // useItn is a integer with 4 bytes + const n = modelLen + languageLen; + const buffer = Module._malloc(n); + + const len = 3 * 4; // 2 pointers + 1 int + const ptr = Module._malloc(len); + + let offset = 0; + Module.stringToUTF8(config.model || '', buffer + offset, modelLen); + offset += modelLen; + + Module.stringToUTF8(config.language || '', buffer + offset, languageLen); + offset += languageLen; + + offset = 0; + Module.setValue(ptr, buffer + offset, 'i8*'); + offset += modelLen; + + Module.setValue(ptr + 4, buffer + offset, 'i8*'); + offset += languageLen; + + Module.setValue(ptr + 8, config.useInverseTextNormalization || 0, 'i32'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineLMConfig(config, Module) { + const n = Module.lengthBytesUTF8(config.model || '') + 1; + const buffer = Module._malloc(n); + + const len = 2 * 4; + const ptr = Module._malloc(len); + + Module.stringToUTF8(config.model || '', buffer, n); + Module.setValue(ptr, buffer, 'i8*'); + Module.setValue(ptr + 4, config.scale || 1, 'float'); + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxOfflineModelConfig(config, Module) { + if (!('transducer' in config)) { + config.transducer = { + encoder: '', + decoder: '', + joiner: '', + }; + } + + if (!('paraformer' in config)) { + config.paraformer = { + model: '', + }; + } + + if (!('nemoCtc' in config)) { + config.nemoCtc = { + model: '', + }; + } + + if (!('whisper' in config)) { + config.whisper = { + encoder: '', + decoder: '', + language: '', + task: '', + tailPaddings: -1, + }; + } + + if (!('moonshine' in config)) { + config.moonshine = { + preprocessor: '', + encoder: '', + uncachedDecoder: '', + cachedDecoder: '', + }; + } + + if (!('tdnn' in config)) { + config.tdnn = { + model: '', + }; + } + + if (!('senseVoice' in config)) { + config.senseVoice = { + model: '', + language: '', + useInverseTextNormalization: 0, + }; + } + + const transducer = + initSherpaOnnxOfflineTransducerModelConfig(config.transducer, Module); + + const paraformer = + initSherpaOnnxOfflineParaformerModelConfig(config.paraformer, Module); + + const nemoCtc = + initSherpaOnnxOfflineNemoEncDecCtcModelConfig(config.nemoCtc, Module); + + const whisper = + initSherpaOnnxOfflineWhisperModelConfig(config.whisper, Module); + + const tdnn = initSherpaOnnxOfflineTdnnModelConfig(config.tdnn, Module); + + const senseVoice = + initSherpaOnnxOfflineSenseVoiceModelConfig(config.senseVoice, Module); + + const moonshine = + initSherpaOnnxOfflineMoonshineModelConfig(config.moonshine, Module); + + const len = transducer.len + paraformer.len + nemoCtc.len + whisper.len + + tdnn.len + 8 * 4 + senseVoice.len + moonshine.len; + + const ptr = Module._malloc(len); + + let offset = 0; + Module._CopyHeap(transducer.ptr, transducer.len, ptr + offset); + offset += transducer.len; + + Module._CopyHeap(paraformer.ptr, paraformer.len, ptr + offset); + offset += paraformer.len; + + Module._CopyHeap(nemoCtc.ptr, nemoCtc.len, ptr + offset); + offset += nemoCtc.len; + + Module._CopyHeap(whisper.ptr, whisper.len, ptr + offset); + offset += whisper.len; + + Module._CopyHeap(tdnn.ptr, tdnn.len, ptr + offset); + offset += tdnn.len; + + const tokensLen = Module.lengthBytesUTF8(config.tokens || '') + 1; + const providerLen = Module.lengthBytesUTF8(config.provider || 'cpu') + 1; + const modelTypeLen = Module.lengthBytesUTF8(config.modelType || '') + 1; + const modelingUnitLen = Module.lengthBytesUTF8(config.modelingUnit || '') + 1; + const bpeVocabLen = Module.lengthBytesUTF8(config.bpeVocab || '') + 1; + const teleSpeechCtcLen = + Module.lengthBytesUTF8(config.teleSpeechCtc || '') + 1; + + const bufferLen = tokensLen + providerLen + modelTypeLen + modelingUnitLen + + bpeVocabLen + teleSpeechCtcLen; + + const buffer = Module._malloc(bufferLen); + + offset = 0; + Module.stringToUTF8(config.tokens, buffer, tokensLen); + offset += tokensLen; + + Module.stringToUTF8(config.provider || 'cpu', buffer + offset, providerLen); + offset += providerLen; + + Module.stringToUTF8(config.modelType || '', buffer + offset, modelTypeLen); + offset += modelTypeLen; + + Module.stringToUTF8( + config.modelingUnit || '', buffer + offset, modelingUnitLen); + offset += modelingUnitLen; + + Module.stringToUTF8(config.bpeVocab || '', buffer + offset, bpeVocabLen); + offset += bpeVocabLen; + + Module.stringToUTF8( + config.teleSpeechCtc || '', buffer + offset, teleSpeechCtcLen); + offset += teleSpeechCtcLen; + + offset = + transducer.len + paraformer.len + nemoCtc.len + whisper.len + tdnn.len; + Module.setValue(ptr + offset, buffer, 'i8*'); // tokens + offset += 4; + + Module.setValue(ptr + offset, config.numThreads || 1, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, config.debug || 0, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, buffer + tokensLen, 'i8*'); // provider + offset += 4; + + Module.setValue( + ptr + offset, buffer + tokensLen + providerLen, 'i8*'); // modelType + offset += 4; + + Module.setValue( + ptr + offset, buffer + tokensLen + providerLen + modelTypeLen, + 'i8*'); // modelingUnit + offset += 4; + + Module.setValue( + ptr + offset, + buffer + tokensLen + providerLen + modelTypeLen + modelingUnitLen, + 'i8*'); // bpeVocab + offset += 4; + + Module.setValue( + ptr + offset, + buffer + tokensLen + providerLen + modelTypeLen + modelingUnitLen + + bpeVocabLen, + 'i8*'); // teleSpeechCtc + offset += 4; + + Module._CopyHeap(senseVoice.ptr, senseVoice.len, ptr + offset); + offset += senseVoice.len; + + Module._CopyHeap(moonshine.ptr, moonshine.len, ptr + offset); + + return { + buffer: buffer, ptr: ptr, len: len, transducer: transducer, + paraformer: paraformer, nemoCtc: nemoCtc, whisper: whisper, tdnn: tdnn, + senseVoice: senseVoice, moonshine: moonshine, + } +} + +function initSherpaOnnxOfflineRecognizerConfig(config, Module) { + if (!('featConfig' in config)) { + config.featConfig = { + sampleRate: 16000, + featureDim: 80, + }; + } + + if (!('lmConfig' in config)) { + config.lmConfig = { + model: '', + scale: 1.0, + }; + } + + const feat = initSherpaOnnxFeatureConfig(config.featConfig, Module); + const model = initSherpaOnnxOfflineModelConfig(config.modelConfig, Module); + const lm = initSherpaOnnxOfflineLMConfig(config.lmConfig, Module); + + const len = feat.len + model.len + lm.len + 7 * 4; + const ptr = Module._malloc(len); + + let offset = 0; + Module._CopyHeap(feat.ptr, feat.len, ptr + offset); + offset += feat.len; + + Module._CopyHeap(model.ptr, model.len, ptr + offset); + offset += model.len; + + Module._CopyHeap(lm.ptr, lm.len, ptr + offset); + offset += lm.len; + + const decodingMethodLen = + Module.lengthBytesUTF8(config.decodingMethod || 'greedy_search') + 1; + const hotwordsFileLen = Module.lengthBytesUTF8(config.hotwordsFile || '') + 1; + const ruleFstsLen = Module.lengthBytesUTF8(config.ruleFsts || '') + 1; + const ruleFarsLen = Module.lengthBytesUTF8(config.ruleFars || '') + 1; + const bufferLen = + decodingMethodLen + hotwordsFileLen + ruleFstsLen + ruleFarsLen; + const buffer = Module._malloc(bufferLen); + + offset = 0; + Module.stringToUTF8( + config.decodingMethod || 'greedy_search', buffer, decodingMethodLen); + offset += decodingMethodLen; + + Module.stringToUTF8( + config.hotwordsFile || '', buffer + offset, hotwordsFileLen); + offset += hotwordsFileLen; + + Module.stringToUTF8(config.ruleFsts || '', buffer + offset, ruleFstsLen); + offset += ruleFstsLen; + + Module.stringToUTF8(config.ruleFars || '', buffer + offset, ruleFarsLen); + offset += ruleFarsLen; + + offset = feat.len + model.len + lm.len; + + Module.setValue(ptr + offset, buffer, 'i8*'); // decoding method + offset += 4; + + Module.setValue(ptr + offset, config.maxActivePaths || 4, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, buffer + decodingMethodLen, 'i8*'); + offset += 4; + + Module.setValue(ptr + offset, config.hotwordsScore || 1.5, 'float'); + offset += 4; + + Module.setValue( + ptr + offset, buffer + decodingMethodLen + hotwordsFileLen, 'i8*'); + offset += 4; + + Module.setValue( + ptr + offset, buffer + decodingMethodLen + hotwordsFileLen + ruleFstsLen, + 'i8*'); + offset += 4; + + Module.setValue(ptr + offset, config.blankPenalty || 0, 'float'); + offset += 4; + + return { + buffer: buffer, ptr: ptr, len: len, feat: feat, model: model, lm: lm + } +} + +class OfflineStream { + constructor(handle, Module) { + this.handle = handle; + this.Module = Module; + } + + free() { + if (this.handle) { + this.Module._SherpaOnnxDestroyOfflineStream(this.handle); + this.handle = null; + } + } + + /** + * @param sampleRate {Number} + * @param samples {Float32Array} Containing samples in the range [-1, 1] + */ + acceptWaveform(sampleRate, samples) { + const pointer = + this.Module._malloc(samples.length * samples.BYTES_PER_ELEMENT); + this.Module.HEAPF32.set(samples, pointer / samples.BYTES_PER_ELEMENT); + this.Module._SherpaOnnxAcceptWaveformOffline( + this.handle, sampleRate, pointer, samples.length); + this.Module._free(pointer); + } +}; + +class OfflineRecognizer { + constructor(configObj, Module) { + this.config = configObj; + const config = initSherpaOnnxOfflineRecognizerConfig(configObj, Module); + const handle = Module._SherpaOnnxCreateOfflineRecognizer(config.ptr); + freeConfig(config, Module); + + this.handle = handle; + this.Module = Module; + } + + free() { + this.Module._SherpaOnnxDestroyOfflineRecognizer(this.handle); + this.handle = 0 + } + + createStream() { + const handle = this.Module._SherpaOnnxCreateOfflineStream(this.handle); + return new OfflineStream(handle, this.Module); + } + + decode(stream) { + this.Module._SherpaOnnxDecodeOfflineStream(this.handle, stream.handle); + } + + getResult(stream) { + const r = + this.Module._SherpaOnnxGetOfflineStreamResultAsJson(stream.handle); + const jsonStr = this.Module.UTF8ToString(r); + const ans = JSON.parse(jsonStr); + this.Module._SherpaOnnxDestroyOfflineStreamResultJson(r); + + return ans; + } +}; + +class OnlineStream { + constructor(handle, Module) { + this.handle = handle; + this.pointer = null; // buffer + this.n = 0; // buffer size + this.Module = Module; + } + + free() { + if (this.handle) { + this.Module._SherpaOnnxDestroyOnlineStream(this.handle); + this.handle = null; + this.Module._free(this.pointer); + this.pointer = null; + this.n = 0; + } + } + + /** + * @param sampleRate {Number} + * @param samples {Float32Array} Containing samples in the range [-1, 1] + */ + acceptWaveform(sampleRate, samples) { + if (this.n < samples.length) { + this.Module._free(this.pointer); + this.pointer = + this.Module._malloc(samples.length * samples.BYTES_PER_ELEMENT); + this.n = samples.length + } + + this.Module.HEAPF32.set(samples, this.pointer / samples.BYTES_PER_ELEMENT); + this.Module._SherpaOnnxOnlineStreamAcceptWaveform( + this.handle, sampleRate, this.pointer, samples.length); + } + + inputFinished() { + this.Module._SherpaOnnxOnlineStreamInputFinished(this.handle); + } +}; + +class OnlineRecognizer { + constructor(configObj, Module) { + this.config = configObj; + const config = initSherpaOnnxOnlineRecognizerConfig(configObj, Module) + const handle = Module._SherpaOnnxCreateOnlineRecognizer(config.ptr); + + freeConfig(config, Module); + + this.handle = handle; + this.Module = Module; + } + + free() { + this.Module._SherpaOnnxDestroyOnlineRecognizer(this.handle); + this.handle = 0 + } + + createStream() { + const handle = this.Module._SherpaOnnxCreateOnlineStream(this.handle); + return new OnlineStream(handle, this.Module); + } + + isReady(stream) { + return this.Module._SherpaOnnxIsOnlineStreamReady( + this.handle, stream.handle) == 1; + } + + decode(stream) { + this.Module._SherpaOnnxDecodeOnlineStream(this.handle, stream.handle); + } + + isEndpoint(stream) { + return this.Module._SherpaOnnxOnlineStreamIsEndpoint( + this.handle, stream.handle) == 1; + } + + reset(stream) { + this.Module._SherpaOnnxOnlineStreamReset(this.handle, stream.handle); + } + + getResult(stream) { + const r = this.Module._SherpaOnnxGetOnlineStreamResultAsJson( + this.handle, stream.handle); + const jsonStr = this.Module.UTF8ToString(r); + const ans = JSON.parse(jsonStr); + this.Module._SherpaOnnxDestroyOnlineStreamResultJson(r); + + return ans; + } +} + +if (typeof process == 'object' && typeof process.versions == 'object' && + typeof process.versions.node == 'string') { + module.exports = { + createOnlineRecognizer, + OfflineRecognizer, + }; +} diff --git a/public/sherpa.wasm/sherpa-onnx-vad.js b/public/sherpa.wasm/sherpa-onnx-vad.js new file mode 100644 index 00000000..0dc87906 --- /dev/null +++ b/public/sherpa.wasm/sherpa-onnx-vad.js @@ -0,0 +1,257 @@ +function freeConfig(config, Module) { + if ('buffer' in config) { + Module._free(config.buffer); + } + + if ('sileroVad' in config) { + freeConfig(config.sileroVad, Module) + } + + + Module._free(config.ptr); +} + +// The user should free the returned pointers +function initSherpaOnnxSileroVadModelConfig(config, Module) { + const modelLen = Module.lengthBytesUTF8(config.model || '') + 1; + + const n = modelLen; + + const buffer = Module._malloc(n); + + const len = 6 * 4; + const ptr = Module._malloc(len); + + Module.stringToUTF8(config.model || '', buffer, modelLen); + + offset = 0; + Module.setValue(ptr, buffer, 'i8*'); + offset += 4; + + Module.setValue(ptr + offset, config.threshold || 0.5, 'float'); + offset += 4; + + Module.setValue(ptr + offset, config.minSilenceDuration || 0.5, 'float'); + offset += 4; + + Module.setValue(ptr + offset, config.minSpeechDuration || 0.25, 'float'); + offset += 4; + + Module.setValue(ptr + offset, config.windowSize || 512, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, config.maxSpeechDuration || 20, 'float'); + offset += 4; + + return { + buffer: buffer, ptr: ptr, len: len, + } +} + +function initSherpaOnnxVadModelConfig(config, Module) { + if (!('sileroVad' in config)) { + config.sileroVad = { + model: '', + threshold: 0.50, + minSilenceDuration: 0.50, + minSpeechDuration: 0.25, + windowSize: 512, + maxSpeechDuration: 20, + }; + } + + const sileroVad = + initSherpaOnnxSileroVadModelConfig(config.sileroVad, Module); + + const len = sileroVad.len + 4 * 4; + const ptr = Module._malloc(len); + + const providerLen = Module.lengthBytesUTF8(config.provider || 'cpu') + 1; + const buffer = Module._malloc(providerLen); + Module.stringToUTF8(config.provider || 'cpu', buffer, providerLen); + + let offset = 0; + Module._CopyHeap(sileroVad.ptr, sileroVad.len, ptr + offset); + offset += sileroVad.len; + + Module.setValue(ptr + offset, config.sampleRate || 16000, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, config.numThreads || 1, 'i32'); + offset += 4; + + Module.setValue(ptr + offset, buffer, 'i8*'); // provider + offset += 4; + + Module.setValue(ptr + offset, config.debug || 0, 'i32'); + offset += 4; + + return { + buffer: buffer, ptr: ptr, len: len, sileroVad: sileroVad, + } +} + +function createVad(Module, myConfig) { + const sileroVad = { + model: './silero_vad.onnx', + threshold: 0.50, + minSilenceDuration: 0.50, + minSpeechDuration: 0.25, + maxSpeechDuration: 20, + windowSize: 512, + }; + + let config = { + sileroVad: sileroVad, + sampleRate: 16000, + numThreads: 1, + provider: 'cpu', + debug: 1, + bufferSizeInSeconds: 30, + }; + + if (myConfig) { + config = myConfig; + } + + return new Vad(config, Module); +} + + +class CircularBuffer { + constructor(capacity, Module) { + this.handle = Module._SherpaOnnxCreateCircularBuffer(capacity); + this.Module = Module; + } + + free() { + this.Module._SherpaOnnxDestroyCircularBuffer(this.handle); + this.handle = 0 + } + + /** + * @param samples {Float32Array} + */ + push(samples) { + const pointer = + this.Module._malloc(samples.length * samples.BYTES_PER_ELEMENT); + this.Module.HEAPF32.set(samples, pointer / samples.BYTES_PER_ELEMENT); + this.Module._SherpaOnnxCircularBufferPush( + this.handle, pointer, samples.length); + this.Module._free(pointer); + } + + get(startIndex, n) { + const p = + this.Module._SherpaOnnxCircularBufferGet(this.handle, startIndex, n); + + const samplesPtr = p / 4; + const samples = new Float32Array(n); + for (let i = 0; i < n; i++) { + samples[i] = this.Module.HEAPF32[samplesPtr + i]; + } + + this.Module._SherpaOnnxCircularBufferFree(p); + + return samples; + } + + pop(n) { + this.Module._SherpaOnnxCircularBufferPop(this.handle, n); + } + + size() { + return this.Module._SherpaOnnxCircularBufferSize(this.handle); + } + + head() { + return this.Module._SherpaOnnxCircularBufferHead(this.handle); + } + + reset() { + this.Module._SherpaOnnxCircularBufferReset(this.handle); + } +} + +class Vad { + constructor(configObj, Module) { + this.config = configObj; + const config = initSherpaOnnxVadModelConfig(configObj, Module); + const handle = Module._SherpaOnnxCreateVoiceActivityDetector( + config.ptr, configObj.bufferSizeInSeconds || 30); + freeConfig(config, Module); + + this.handle = handle; + this.Module = Module; + } + + free() { + this.Module._SherpaOnnxDestroyVoiceActivityDetector(this.handle); + this.handle = 0 + } + + // samples is a float32 array + acceptWaveform(samples) { + const pointer = + this.Module._malloc(samples.length * samples.BYTES_PER_ELEMENT); + this.Module.HEAPF32.set(samples, pointer / samples.BYTES_PER_ELEMENT); + this.Module._SherpaOnnxVoiceActivityDetectorAcceptWaveform( + this.handle, pointer, samples.length); + this.Module._free(pointer); + } + + isEmpty() { + return this.Module._SherpaOnnxVoiceActivityDetectorEmpty(this.handle) == 1; + } + + isDetected() { + return this.Module._SherpaOnnxVoiceActivityDetectorDetected(this.handle) == + 1; + } + + pop() { + this.Module._SherpaOnnxVoiceActivityDetectorPop(this.handle); + } + + clear() { + this.Module._SherpaOnnxVoiceActivityDetectorClear(this.handle); + } + + /* +{ + samples: a 1-d float32 array, + start: an int32 +} + */ + front() { + const h = this.Module._SherpaOnnxVoiceActivityDetectorFront(this.handle); + + const start = this.Module.HEAP32[h / 4]; + const samplesPtr = this.Module.HEAP32[h / 4 + 1] / 4; + const numSamples = this.Module.HEAP32[h / 4 + 2]; + + const samples = new Float32Array(numSamples); + for (let i = 0; i < numSamples; i++) { + samples[i] = this.Module.HEAPF32[samplesPtr + i]; + } + + this.Module._SherpaOnnxDestroySpeechSegment(h); + return {samples: samples, start: start}; + } + + reset() { + this.Module._SherpaOnnxVoiceActivityDetectorReset(this.handle); + } + + flush() { + this.Module._SherpaOnnxVoiceActivityDetectorFlush(this.handle); + } +}; + +if (typeof process == 'object' && typeof process.versions == 'object' && + typeof process.versions.node == 'string') { + module.exports = { + createVad, + CircularBuffer, + }; +} diff --git a/public/sherpa.wasm/sherpa-onnx-wasm-main-vad-asr.js b/public/sherpa.wasm/sherpa-onnx-wasm-main-vad-asr.js new file mode 100644 index 00000000..38ded061 --- /dev/null +++ b/public/sherpa.wasm/sherpa-onnx-wasm-main-vad-asr.js @@ -0,0 +1,4203 @@ +var Module = typeof Module != "undefined" ? Module : {}; +if (!Module.expectedDataFileDownloads) { + Module.expectedDataFileDownloads = 0 +} +Module.expectedDataFileDownloads++; + +Module.loadModel = function () { + if (Module["ENVIRONMENT_IS_PTHREAD"] || Module["$ww"]) return; + + const DB_NAME = "language-ai-models"; + const STORE_NAME = "models"; + const MODEL_KEY = "english"; + const PACKAGE_NAME = "../../bin/sherpa-onnx-wasm-main-vad-asr.data"; + const REMOTE_PACKAGE_BASE = "./models/sherpa-onnx-wasm-main-vad-asr.data"; + + function openDatabase(callback) { + const request = indexedDB.open(DB_NAME, 1); + request.onupgradeneeded = function (event) { + const db = event.target.result; + if (!db.objectStoreNames.contains(STORE_NAME)) { + db.createObjectStore(STORE_NAME); + } + }; + request.onsuccess = function (event) { + callback(event.target.result); + }; + request.onerror = function (event) { + console.error("IndexedDB error:", event.target.error); + callback(null); + }; + } + + function getModelFromDB(callback) { + openDatabase(db => { + if (!db) return callback(null); + const transaction = db.transaction(STORE_NAME, "readonly"); + const store = transaction.objectStore(STORE_NAME); + const request = store.get(MODEL_KEY); + request.onsuccess = function () { + callback(request.result); + }; + request.onerror = function () { + callback(null); + }; + }); + } + + function saveModelToDB(data) { + openDatabase(db => { + if (!db) return; + const transaction = db.transaction(STORE_NAME, "readwrite"); + const store = transaction.objectStore(STORE_NAME); + store.put(data, MODEL_KEY); + }); + } + + function fetchRemotePackage(packageName, packageSize, callback, errback) { + const xhr = new XMLHttpRequest(); + xhr.open("GET", packageName, true); + xhr.responseType = "arraybuffer"; + xhr.onload = function () { + if (xhr.status === 200 || xhr.status === 304 || xhr.status === 206) { + callback(xhr.response); + } else { + errback(new Error(`Failed to fetch model: ${xhr.statusText}`)); + } + }; + xhr.onerror = function () { + errback(new Error("Network error while downloading model")); + }; + xhr.send(); + } + + function loadPackage(metadata) { + getModelFromDB(data => { + if (data) { + window.modelLoaded = true; + console.log("Model loaded from IndexedDB"); + window.dispatchEvent(new Event("modelLoaded")); + processPackageData(data); + } else { + console.log("Downloading model..."); + window.dispatchEvent(new Event("loadingModel")); + window.modelLoaded = false; + fetchRemotePackage(REMOTE_PACKAGE_BASE, metadata.remote_package_size, function (data) { + console.log("Model downloaded, saving to IndexedDB..."); + window.modelLoaded = true; + window.dispatchEvent(new Event("modelLoaded")); + saveModelToDB(data); + processPackageData(data); + }, console.error), + // Pass the progress callback that updates your UI state + (progress) => { + console.log(progress); + window.downloadProgress = progress; + window.dispatchEvent( + new CustomEvent("modelProgress", { detail: { progress } }) + ); + //setDownloadProgress(progress); // assuming setDownloadProgress is defined in your component state + } + } + }); + + function processPackageData(arrayBuffer) { + const byteArray = new Uint8Array(arrayBuffer); + DataRequest.prototype.byteArray = byteArray; + metadata.files.forEach(file => { + new DataRequest(file.start, file.end, file.audio || 0).open("GET", file.filename); + }); + metadata.files.forEach(file => { + DataRequest.prototype.requests[file.filename].onload(); + }); + Module["removeRunDependency"]("datafile_" + PACKAGE_NAME); + } + + function DataRequest(start, end, audio) { + this.start = start; + this.end = end; + this.audio = audio; + } + DataRequest.prototype = { + requests: {}, + open: function (mode, name) { + this.name = name; + this.requests[name] = this; + Module["addRunDependency"]("fp " + this.name); + }, + send: function () {}, + onload: function () { + const byteArray = this.byteArray.subarray(this.start, this.end); + this.finish(byteArray); + }, + finish: function (byteArray) { + Module["FS_createDataFile"](this.name, null, byteArray, true, true, true); + Module["removeRunDependency"]("fp " + this.name); + delete this.requests[this.name]; + } + }; + } + + loadPackage({ + files: [ + { filename: "/silero_vad.onnx", start: 0, end: 1807522 }, + { filename: "/tokens.txt", start: 1807522, end: 1812542 }, + { filename: "/transducer-decoder.onnx", start: 1812542, end: 3905622 }, + { filename: "/transducer-encoder.onnx", start: 3905622, end: 74690350 }, + { filename: "/transducer-joiner.onnx", start: 74690350, end: 74949766 } + ], + remote_package_size: 74949766 + }); +}; + + + +var moduleOverrides = Object.assign({}, Module); +var arguments_ = []; +var thisProgram = "./this.program"; +var quit_ = (status, toThrow) => { + throw toThrow +} +; +var ENVIRONMENT_IS_WEB = typeof window == "object"; +var ENVIRONMENT_IS_WORKER = typeof importScripts == "function"; +var ENVIRONMENT_IS_NODE = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string"; +var scriptDirectory = ""; +function locateFile(path) { + if (Module["locateFile"]) { + return Module["locateFile"](path, scriptDirectory) + } + return scriptDirectory + path +} +var read_, readAsync, readBinary; +if (ENVIRONMENT_IS_NODE) { + var fs = require("fs"); + var nodePath = require("path"); + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = nodePath.dirname(scriptDirectory) + "/" + } else { + scriptDirectory = __dirname + "/" + } + read_ = (filename, binary) => { + filename = isFileURI(filename) ? new URL(filename) : nodePath.normalize(filename); + return fs.readFileSync(filename, binary ? undefined : "utf8") + } + ; + readBinary = filename => { + var ret = read_(filename, true); + if (!ret.buffer) { + ret = new Uint8Array(ret) + } + return ret + } + ; + readAsync = (filename, onload, onerror, binary=true) => { + filename = isFileURI(filename) ? new URL(filename) : nodePath.normalize(filename); + fs.readFile(filename, binary ? undefined : "utf8", (err, data) => { + if (err) + onerror(err); + else + onload(binary ? data.buffer : data) + } + ) + } + ; + if (!Module["thisProgram"] && process.argv.length > 1) { + thisProgram = process.argv[1].replace(/\\/g, "/") + } + arguments_ = process.argv.slice(2); + if (typeof module != "undefined") { + module["exports"] = Module + } + process.on("uncaughtException", ex => { + if (ex !== "unwind" && !(ex instanceof ExitStatus) && !(ex.context instanceof ExitStatus)) { + throw ex + } + } + ); + quit_ = (status, toThrow) => { + process.exitCode = status; + throw toThrow + } +} else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { + if (ENVIRONMENT_IS_WORKER) { + scriptDirectory = self.location.href + } else if (typeof document != "undefined" && document.currentScript) { + scriptDirectory = document.currentScript.src + } + if (scriptDirectory.startsWith("blob:")) { + scriptDirectory = "" + } else { + scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf("/") + 1) + } + { + read_ = url => { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.send(null); + return xhr.responseText + } + ; + if (ENVIRONMENT_IS_WORKER) { + readBinary = url => { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + xhr.responseType = "arraybuffer"; + xhr.send(null); + return new Uint8Array(xhr.response) + } + } + readAsync = (url, onload, onerror) => { + var xhr = new XMLHttpRequest; + xhr.open("GET", url, true); + xhr.responseType = "arraybuffer"; + xhr.onload = () => { + if (xhr.status == 200 || xhr.status == 0 && xhr.response) { + onload(xhr.response); + return + } + onerror() + } + ; + xhr.onerror = onerror; + xhr.send(null) + } + } +} else {} +var out = Module["print"] || console.log.bind(console); +var err = Module["printErr"] || console.error.bind(console); +Object.assign(Module, moduleOverrides); +moduleOverrides = null; +if (Module["arguments"]) + arguments_ = Module["arguments"]; +if (Module["thisProgram"]) + thisProgram = Module["thisProgram"]; +if (Module["quit"]) + quit_ = Module["quit"]; +var wasmBinary; +if (Module["wasmBinary"]) + wasmBinary = Module["wasmBinary"]; +if (typeof WebAssembly != "object") { + abort("no native wasm support detected") +} +var wasmMemory; +var ABORT = false; +var EXITSTATUS; +var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; +function updateMemoryViews() { + var b = wasmMemory.buffer; + Module["HEAP8"] = HEAP8 = new Int8Array(b); + Module["HEAP16"] = HEAP16 = new Int16Array(b); + Module["HEAPU8"] = HEAPU8 = new Uint8Array(b); + Module["HEAPU16"] = HEAPU16 = new Uint16Array(b); + Module["HEAP32"] = HEAP32 = new Int32Array(b); + Module["HEAPU32"] = HEAPU32 = new Uint32Array(b); + Module["HEAPF32"] = HEAPF32 = new Float32Array(b); + Module["HEAPF64"] = HEAPF64 = new Float64Array(b) +} +var __ATPRERUN__ = []; +var __ATINIT__ = []; +var __ATPOSTRUN__ = []; +var runtimeInitialized = false; +function preRun() { + if (Module["preRun"]) { + if (typeof Module["preRun"] == "function") + Module["preRun"] = [Module["preRun"]]; + while (Module["preRun"].length) { + addOnPreRun(Module["preRun"].shift()) + } + } + callRuntimeCallbacks(__ATPRERUN__) +} +function initRuntime() { + runtimeInitialized = true; + if (!Module["noFSInit"] && !FS.init.initialized) + FS.init(); + FS.ignorePermissions = false; + TTY.init(); + callRuntimeCallbacks(__ATINIT__) +} +function postRun() { + if (Module["postRun"]) { + if (typeof Module["postRun"] == "function") + Module["postRun"] = [Module["postRun"]]; + while (Module["postRun"].length) { + addOnPostRun(Module["postRun"].shift()) + } + } + callRuntimeCallbacks(__ATPOSTRUN__) +} +function addOnPreRun(cb) { + __ATPRERUN__.unshift(cb) +} +function addOnInit(cb) { + __ATINIT__.unshift(cb) +} +function addOnPostRun(cb) { + __ATPOSTRUN__.unshift(cb) +} +var runDependencies = 0; +var runDependencyWatcher = null; +var dependenciesFulfilled = null; +function getUniqueRunDependency(id) { + return id +} +function addRunDependency(id) { + runDependencies++; + Module["monitorRunDependencies"]?.(runDependencies) +} +function removeRunDependency(id) { + runDependencies--; + Module["monitorRunDependencies"]?.(runDependencies); + if (runDependencies == 0) { + if (runDependencyWatcher !== null) { + clearInterval(runDependencyWatcher); + runDependencyWatcher = null + } + if (dependenciesFulfilled) { + var callback = dependenciesFulfilled; + dependenciesFulfilled = null; + callback() + } + } +} +function abort(what) { + Module["onAbort"]?.(what); + what = "Aborted(" + what + ")"; + err(what); + ABORT = true; + EXITSTATUS = 1; + what += ". Build with -sASSERTIONS for more info."; + var e = new WebAssembly.RuntimeError(what); + throw e +} +var dataURIPrefix = "data:application/octet-stream;base64,"; +var isDataURI = filename => filename.startsWith(dataURIPrefix); +var isFileURI = filename => filename.startsWith("file://"); +var wasmBinaryFile; +wasmBinaryFile = "sherpa-onnx-wasm-main-vad-asr.wasm"; +if (!isDataURI(wasmBinaryFile)) { + wasmBinaryFile = locateFile(wasmBinaryFile) +} +function getBinarySync(file) { + if (file == wasmBinaryFile && wasmBinary) { + return new Uint8Array(wasmBinary) + } + if (readBinary) { + return readBinary(file) + } + throw "both async and sync fetching of the wasm failed" +} +function getBinaryPromise(binaryFile) { + if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) { + if (typeof fetch == "function" && !isFileURI(binaryFile)) { + return fetch(binaryFile, { + credentials: "same-origin" + }).then(response => { + if (!response["ok"]) { + throw `failed to load wasm binary file at '${binaryFile}'` + } + return response["arrayBuffer"]() + } + ).catch( () => getBinarySync(binaryFile)) + } else if (readAsync) { + return new Promise( (resolve, reject) => { + readAsync(binaryFile, response => resolve(new Uint8Array(response)), reject) + } + ) + } + } + return Promise.resolve().then( () => getBinarySync(binaryFile)) +} +function instantiateArrayBuffer(binaryFile, imports, receiver) { + return getBinaryPromise(binaryFile).then(binary => WebAssembly.instantiate(binary, imports)).then(instance => instance).then(receiver, reason => { + err(`failed to asynchronously prepare wasm: ${reason}`); + abort(reason) + } + ) +} +function instantiateAsync(binary, binaryFile, imports, callback) { + if (!binary && typeof WebAssembly.instantiateStreaming == "function" && !isDataURI(binaryFile) && !isFileURI(binaryFile) && !ENVIRONMENT_IS_NODE && typeof fetch == "function") { + return fetch(binaryFile, { + credentials: "same-origin" + }).then(response => { + var result = WebAssembly.instantiateStreaming(response, imports); + return result.then(callback, function(reason) { + err(`wasm streaming compile failed: ${reason}`); + err("falling back to ArrayBuffer instantiation"); + return instantiateArrayBuffer(binaryFile, imports, callback) + }) + } + ) + } + return instantiateArrayBuffer(binaryFile, imports, callback) +} +function createWasm() { + var info = { + "a": wasmImports + }; + function receiveInstance(instance, module) { + wasmExports = instance.exports; + wasmMemory = wasmExports["L"]; + updateMemoryViews(); + addOnInit(wasmExports["M"]); + removeRunDependency("wasm-instantiate"); + return wasmExports + } + addRunDependency("wasm-instantiate"); + function receiveInstantiationResult(result) { + receiveInstance(result["instance"]) + } + if (Module["instantiateWasm"]) { + try { + return Module["instantiateWasm"](info, receiveInstance) + } catch (e) { + err(`Module.instantiateWasm callback failed with error: ${e}`); + return false + } + } + instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult); + return {} +} +var tempDouble; +var tempI64; +var ASM_CONSTS = { + 1008520: ($0, $1, $2, $3) => { + if (typeof Module == "undefined" || !Module.MountedFiles) { + return 1 + } + let fileName = UTF8ToString($0 >>> 0); + if (fileName.startsWith("./")) { + fileName = fileName.substring(2) + } + const fileData = Module.MountedFiles.get(fileName); + if (!fileData) { + return 2 + } + const offset = $1 >>> 0; + const length = $2 >>> 0; + const buffer = $3 >>> 0; + if (offset + length > fileData.byteLength) { + return 3 + } + try { + HEAPU8.set(fileData.subarray(offset, offset + length), buffer); + return 0 + } catch { + return 4 + } + } +}; +function ExitStatus(status) { + this.name = "ExitStatus"; + this.message = `Program terminated with exit(${status})`; + this.status = status +} +var callRuntimeCallbacks = callbacks => { + while (callbacks.length > 0) { + callbacks.shift()(Module) + } +} +; +function getValue(ptr, type="i8") { + if (type.endsWith("*")) + type = "*"; + switch (type) { + case "i1": + return HEAP8[ptr >> 0]; + case "i8": + return HEAP8[ptr >> 0]; + case "i16": + return HEAP16[ptr >> 1]; + case "i32": + return HEAP32[ptr >> 2]; + case "i64": + abort("to do getValue(i64) use WASM_BIGINT"); + case "float": + return HEAPF32[ptr >> 2]; + case "double": + return HEAPF64[ptr >> 3]; + case "*": + return HEAPU32[ptr >> 2]; + default: + abort(`invalid type for getValue: ${type}`) + } +} +var noExitRuntime = Module["noExitRuntime"] || true; +function setValue(ptr, value, type="i8") { + if (type.endsWith("*")) + type = "*"; + switch (type) { + case "i1": + HEAP8[ptr >> 0] = value; + break; + case "i8": + HEAP8[ptr >> 0] = value; + break; + case "i16": + HEAP16[ptr >> 1] = value; + break; + case "i32": + HEAP32[ptr >> 2] = value; + break; + case "i64": + abort("to do setValue(i64) use WASM_BIGINT"); + case "float": + HEAPF32[ptr >> 2] = value; + break; + case "double": + HEAPF64[ptr >> 3] = value; + break; + case "*": + HEAPU32[ptr >> 2] = value; + break; + default: + abort(`invalid type for setValue: ${type}`) + } +} +class ExceptionInfo { + constructor(excPtr) { + this.excPtr = excPtr; + this.ptr = excPtr - 24 + } + set_type(type) { + HEAPU32[this.ptr + 4 >> 2] = type + } + get_type() { + return HEAPU32[this.ptr + 4 >> 2] + } + set_destructor(destructor) { + HEAPU32[this.ptr + 8 >> 2] = destructor + } + get_destructor() { + return HEAPU32[this.ptr + 8 >> 2] + } + set_caught(caught) { + caught = caught ? 1 : 0; + HEAP8[this.ptr + 12 >> 0] = caught + } + get_caught() { + return HEAP8[this.ptr + 12 >> 0] != 0 + } + set_rethrown(rethrown) { + rethrown = rethrown ? 1 : 0; + HEAP8[this.ptr + 13 >> 0] = rethrown + } + get_rethrown() { + return HEAP8[this.ptr + 13 >> 0] != 0 + } + init(type, destructor) { + this.set_adjusted_ptr(0); + this.set_type(type); + this.set_destructor(destructor) + } + set_adjusted_ptr(adjustedPtr) { + HEAPU32[this.ptr + 16 >> 2] = adjustedPtr + } + get_adjusted_ptr() { + return HEAPU32[this.ptr + 16 >> 2] + } + get_exception_ptr() { + var isPointer = ___cxa_is_pointer_type(this.get_type()); + if (isPointer) { + return HEAPU32[this.excPtr >> 2] + } + var adjusted = this.get_adjusted_ptr(); + if (adjusted !== 0) + return adjusted; + return this.excPtr + } +} +var exceptionLast = 0; +var uncaughtExceptionCount = 0; +var ___cxa_throw = (ptr, type, destructor) => { + var info = new ExceptionInfo(ptr); + info.init(type, destructor); + exceptionLast = ptr; + uncaughtExceptionCount++; + throw exceptionLast +} +; +var PATH = { + isAbs: path => path.charAt(0) === "/", + splitPath: filename => { + var splitPathRe = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; + return splitPathRe.exec(filename).slice(1) + } + , + normalizeArray: (parts, allowAboveRoot) => { + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === ".") { + parts.splice(i, 1) + } else if (last === "..") { + parts.splice(i, 1); + up++ + } else if (up) { + parts.splice(i, 1); + up-- + } + } + if (allowAboveRoot) { + for (; up; up--) { + parts.unshift("..") + } + } + return parts + } + , + normalize: path => { + var isAbsolute = PATH.isAbs(path) + , trailingSlash = path.substr(-1) === "/"; + path = PATH.normalizeArray(path.split("/").filter(p => !!p), !isAbsolute).join("/"); + if (!path && !isAbsolute) { + path = "." + } + if (path && trailingSlash) { + path += "/" + } + return (isAbsolute ? "/" : "") + path + } + , + dirname: path => { + var result = PATH.splitPath(path) + , root = result[0] + , dir = result[1]; + if (!root && !dir) { + return "." + } + if (dir) { + dir = dir.substr(0, dir.length - 1) + } + return root + dir + } + , + basename: path => { + if (path === "/") + return "/"; + path = PATH.normalize(path); + path = path.replace(/\/$/, ""); + var lastSlash = path.lastIndexOf("/"); + if (lastSlash === -1) + return path; + return path.substr(lastSlash + 1) + } + , + join: function() { + var paths = Array.prototype.slice.call(arguments); + return PATH.normalize(paths.join("/")) + }, + join2: (l, r) => PATH.normalize(l + "/" + r) +}; +var initRandomFill = () => { + if (typeof crypto == "object" && typeof crypto["getRandomValues"] == "function") { + return view => crypto.getRandomValues(view) + } else if (ENVIRONMENT_IS_NODE) { + try { + var crypto_module = require("crypto"); + var randomFillSync = crypto_module["randomFillSync"]; + if (randomFillSync) { + return view => crypto_module["randomFillSync"](view) + } + var randomBytes = crypto_module["randomBytes"]; + return view => (view.set(randomBytes(view.byteLength)), + view) + } catch (e) {} + } + abort("initRandomDevice") +} +; +var randomFill = view => (randomFill = initRandomFill())(view); +var PATH_FS = { + resolve: function() { + var resolvedPath = "" + , resolvedAbsolute = false; + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = i >= 0 ? arguments[i] : FS.cwd(); + if (typeof path != "string") { + throw new TypeError("Arguments to path.resolve must be strings") + } else if (!path) { + return "" + } + resolvedPath = path + "/" + resolvedPath; + resolvedAbsolute = PATH.isAbs(path) + } + resolvedPath = PATH.normalizeArray(resolvedPath.split("/").filter(p => !!p), !resolvedAbsolute).join("/"); + return (resolvedAbsolute ? "/" : "") + resolvedPath || "." + }, + relative: (from, to) => { + from = PATH_FS.resolve(from).substr(1); + to = PATH_FS.resolve(to).substr(1); + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== "") + break + } + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== "") + break + } + if (start > end) + return []; + return arr.slice(start, end - start + 1) + } + var fromParts = trim(from.split("/")); + var toParts = trim(to.split("/")); + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break + } + } + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push("..") + } + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + return outputParts.join("/") + } +}; +var UTF8Decoder = typeof TextDecoder != "undefined" ? new TextDecoder("utf8") : undefined; +var UTF8ArrayToString = (heapOrArray, idx, maxBytesToRead) => { + var endIdx = idx + maxBytesToRead; + var endPtr = idx; + while (heapOrArray[endPtr] && !(endPtr >= endIdx)) + ++endPtr; + if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) { + return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr)) + } + var str = ""; + while (idx < endPtr) { + var u0 = heapOrArray[idx++]; + if (!(u0 & 128)) { + str += String.fromCharCode(u0); + continue + } + var u1 = heapOrArray[idx++] & 63; + if ((u0 & 224) == 192) { + str += String.fromCharCode((u0 & 31) << 6 | u1); + continue + } + var u2 = heapOrArray[idx++] & 63; + if ((u0 & 240) == 224) { + u0 = (u0 & 15) << 12 | u1 << 6 | u2 + } else { + u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63 + } + if (u0 < 65536) { + str += String.fromCharCode(u0) + } else { + var ch = u0 - 65536; + str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) + } + } + return str +} +; +var FS_stdin_getChar_buffer = []; +var lengthBytesUTF8 = str => { + var len = 0; + for (var i = 0; i < str.length; ++i) { + var c = str.charCodeAt(i); + if (c <= 127) { + len++ + } else if (c <= 2047) { + len += 2 + } else if (c >= 55296 && c <= 57343) { + len += 4; + ++i + } else { + len += 3 + } + } + return len +} +; +var stringToUTF8Array = (str, heap, outIdx, maxBytesToWrite) => { + if (!(maxBytesToWrite > 0)) + return 0; + var startIdx = outIdx; + var endIdx = outIdx + maxBytesToWrite - 1; + for (var i = 0; i < str.length; ++i) { + var u = str.charCodeAt(i); + if (u >= 55296 && u <= 57343) { + var u1 = str.charCodeAt(++i); + u = 65536 + ((u & 1023) << 10) | u1 & 1023 + } + if (u <= 127) { + if (outIdx >= endIdx) + break; + heap[outIdx++] = u + } else if (u <= 2047) { + if (outIdx + 1 >= endIdx) + break; + heap[outIdx++] = 192 | u >> 6; + heap[outIdx++] = 128 | u & 63 + } else if (u <= 65535) { + if (outIdx + 2 >= endIdx) + break; + heap[outIdx++] = 224 | u >> 12; + heap[outIdx++] = 128 | u >> 6 & 63; + heap[outIdx++] = 128 | u & 63 + } else { + if (outIdx + 3 >= endIdx) + break; + heap[outIdx++] = 240 | u >> 18; + heap[outIdx++] = 128 | u >> 12 & 63; + heap[outIdx++] = 128 | u >> 6 & 63; + heap[outIdx++] = 128 | u & 63 + } + } + heap[outIdx] = 0; + return outIdx - startIdx +} +; +function intArrayFromString(stringy, dontAddNull, length) { + var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; + var u8array = new Array(len); + var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); + if (dontAddNull) + u8array.length = numBytesWritten; + return u8array +} +var FS_stdin_getChar = () => { + if (!FS_stdin_getChar_buffer.length) { + var result = null; + if (ENVIRONMENT_IS_NODE) { + var BUFSIZE = 256; + var buf = Buffer.alloc(BUFSIZE); + var bytesRead = 0; + var fd = process.stdin.fd; + try { + bytesRead = fs.readSync(fd, buf) + } catch (e) { + if (e.toString().includes("EOF")) + bytesRead = 0; + else + throw e + } + if (bytesRead > 0) { + result = buf.slice(0, bytesRead).toString("utf-8") + } else { + result = null + } + } else if (typeof window != "undefined" && typeof window.prompt == "function") { + result = window.prompt("Input: "); + if (result !== null) { + result += "\n" + } + } else if (typeof readline == "function") { + result = readline(); + if (result !== null) { + result += "\n" + } + } + if (!result) { + return null + } + FS_stdin_getChar_buffer = intArrayFromString(result, true) + } + return FS_stdin_getChar_buffer.shift() +} +; +var TTY = { + ttys: [], + init() {}, + shutdown() {}, + register(dev, ops) { + TTY.ttys[dev] = { + input: [], + output: [], + ops: ops + }; + FS.registerDevice(dev, TTY.stream_ops) + }, + stream_ops: { + open(stream) { + var tty = TTY.ttys[stream.node.rdev]; + if (!tty) { + throw new FS.ErrnoError(43) + } + stream.tty = tty; + stream.seekable = false + }, + close(stream) { + stream.tty.ops.fsync(stream.tty) + }, + fsync(stream) { + stream.tty.ops.fsync(stream.tty) + }, + read(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.get_char) { + throw new FS.ErrnoError(60) + } + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = stream.tty.ops.get_char(stream.tty) + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) + break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write(stream, buffer, offset, length, pos) { + if (!stream.tty || !stream.tty.ops.put_char) { + throw new FS.ErrnoError(60) + } + try { + for (var i = 0; i < length; i++) { + stream.tty.ops.put_char(stream.tty, buffer[offset + i]) + } + } catch (e) { + throw new FS.ErrnoError(29) + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }, + default_tty_ops: { + get_char(tty) { + return FS_stdin_getChar() + }, + put_char(tty, val) { + if (val === null || val === 10) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) + tty.output.push(val) + } + }, + fsync(tty) { + if (tty.output && tty.output.length > 0) { + out(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + }, + ioctl_tcgets(tty) { + return { + c_iflag: 25856, + c_oflag: 5, + c_cflag: 191, + c_lflag: 35387, + c_cc: [3, 28, 127, 21, 4, 0, 1, 0, 17, 19, 26, 0, 18, 15, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] + } + }, + ioctl_tcsets(tty, optional_actions, data) { + return 0 + }, + ioctl_tiocgwinsz(tty) { + return [24, 80] + } + }, + default_tty1_ops: { + put_char(tty, val) { + if (val === null || val === 10) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } else { + if (val != 0) + tty.output.push(val) + } + }, + fsync(tty) { + if (tty.output && tty.output.length > 0) { + err(UTF8ArrayToString(tty.output, 0)); + tty.output = [] + } + } + } +}; +var zeroMemory = (address, size) => { + HEAPU8.fill(0, address, address + size); + return address +} +; +var alignMemory = (size, alignment) => Math.ceil(size / alignment) * alignment; +var mmapAlloc = size => { + size = alignMemory(size, 65536); + var ptr = _emscripten_builtin_memalign(65536, size); + if (!ptr) + return 0; + return zeroMemory(ptr, size) +} +; +var MEMFS = { + ops_table: null, + mount(mount) { + return MEMFS.createNode(null, "/", 16384 | 511, 0) + }, + createNode(parent, name, mode, dev) { + if (FS.isBlkdev(mode) || FS.isFIFO(mode)) { + throw new FS.ErrnoError(63) + } + MEMFS.ops_table ||= { + dir: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + lookup: MEMFS.node_ops.lookup, + mknod: MEMFS.node_ops.mknod, + rename: MEMFS.node_ops.rename, + unlink: MEMFS.node_ops.unlink, + rmdir: MEMFS.node_ops.rmdir, + readdir: MEMFS.node_ops.readdir, + symlink: MEMFS.node_ops.symlink + }, + stream: { + llseek: MEMFS.stream_ops.llseek + } + }, + file: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: { + llseek: MEMFS.stream_ops.llseek, + read: MEMFS.stream_ops.read, + write: MEMFS.stream_ops.write, + allocate: MEMFS.stream_ops.allocate, + mmap: MEMFS.stream_ops.mmap, + msync: MEMFS.stream_ops.msync + } + }, + link: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr, + readlink: MEMFS.node_ops.readlink + }, + stream: {} + }, + chrdev: { + node: { + getattr: MEMFS.node_ops.getattr, + setattr: MEMFS.node_ops.setattr + }, + stream: FS.chrdev_stream_ops + } + }; + var node = FS.createNode(parent, name, mode, dev); + if (FS.isDir(node.mode)) { + node.node_ops = MEMFS.ops_table.dir.node; + node.stream_ops = MEMFS.ops_table.dir.stream; + node.contents = {} + } else if (FS.isFile(node.mode)) { + node.node_ops = MEMFS.ops_table.file.node; + node.stream_ops = MEMFS.ops_table.file.stream; + node.usedBytes = 0; + node.contents = null + } else if (FS.isLink(node.mode)) { + node.node_ops = MEMFS.ops_table.link.node; + node.stream_ops = MEMFS.ops_table.link.stream + } else if (FS.isChrdev(node.mode)) { + node.node_ops = MEMFS.ops_table.chrdev.node; + node.stream_ops = MEMFS.ops_table.chrdev.stream + } + node.timestamp = Date.now(); + if (parent) { + parent.contents[name] = node; + parent.timestamp = node.timestamp + } + return node + }, + getFileDataAsTypedArray(node) { + if (!node.contents) + return new Uint8Array(0); + if (node.contents.subarray) + return node.contents.subarray(0, node.usedBytes); + return new Uint8Array(node.contents) + }, + expandFileStorage(node, newCapacity) { + var prevCapacity = node.contents ? node.contents.length : 0; + if (prevCapacity >= newCapacity) + return; + var CAPACITY_DOUBLING_MAX = 1024 * 1024; + newCapacity = Math.max(newCapacity, prevCapacity * (prevCapacity < CAPACITY_DOUBLING_MAX ? 2 : 1.125) >>> 0); + if (prevCapacity != 0) + newCapacity = Math.max(newCapacity, 256); + var oldContents = node.contents; + node.contents = new Uint8Array(newCapacity); + if (node.usedBytes > 0) + node.contents.set(oldContents.subarray(0, node.usedBytes), 0) + }, + resizeFileStorage(node, newSize) { + if (node.usedBytes == newSize) + return; + if (newSize == 0) { + node.contents = null; + node.usedBytes = 0 + } else { + var oldContents = node.contents; + node.contents = new Uint8Array(newSize); + if (oldContents) { + node.contents.set(oldContents.subarray(0, Math.min(newSize, node.usedBytes))) + } + node.usedBytes = newSize + } + }, + node_ops: { + getattr(node) { + var attr = {}; + attr.dev = FS.isChrdev(node.mode) ? node.id : 1; + attr.ino = node.id; + attr.mode = node.mode; + attr.nlink = 1; + attr.uid = 0; + attr.gid = 0; + attr.rdev = node.rdev; + if (FS.isDir(node.mode)) { + attr.size = 4096 + } else if (FS.isFile(node.mode)) { + attr.size = node.usedBytes + } else if (FS.isLink(node.mode)) { + attr.size = node.link.length + } else { + attr.size = 0 + } + attr.atime = new Date(node.timestamp); + attr.mtime = new Date(node.timestamp); + attr.ctime = new Date(node.timestamp); + attr.blksize = 4096; + attr.blocks = Math.ceil(attr.size / attr.blksize); + return attr + }, + setattr(node, attr) { + if (attr.mode !== undefined) { + node.mode = attr.mode + } + if (attr.timestamp !== undefined) { + node.timestamp = attr.timestamp + } + if (attr.size !== undefined) { + MEMFS.resizeFileStorage(node, attr.size) + } + }, + lookup(parent, name) { + throw FS.genericErrors[44] + }, + mknod(parent, name, mode, dev) { + return MEMFS.createNode(parent, name, mode, dev) + }, + rename(old_node, new_dir, new_name) { + if (FS.isDir(old_node.mode)) { + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (new_node) { + for (var i in new_node.contents) { + throw new FS.ErrnoError(55) + } + } + } + delete old_node.parent.contents[old_node.name]; + old_node.parent.timestamp = Date.now(); + old_node.name = new_name; + new_dir.contents[new_name] = old_node; + new_dir.timestamp = old_node.parent.timestamp; + old_node.parent = new_dir + }, + unlink(parent, name) { + delete parent.contents[name]; + parent.timestamp = Date.now() + }, + rmdir(parent, name) { + var node = FS.lookupNode(parent, name); + for (var i in node.contents) { + throw new FS.ErrnoError(55) + } + delete parent.contents[name]; + parent.timestamp = Date.now() + }, + readdir(node) { + var entries = [".", ".."]; + for (var key of Object.keys(node.contents)) { + entries.push(key) + } + return entries + }, + symlink(parent, newname, oldpath) { + var node = MEMFS.createNode(parent, newname, 511 | 40960, 0); + node.link = oldpath; + return node + }, + readlink(node) { + if (!FS.isLink(node.mode)) { + throw new FS.ErrnoError(28) + } + return node.link + } + }, + stream_ops: { + read(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= stream.node.usedBytes) + return 0; + var size = Math.min(stream.node.usedBytes - position, length); + if (size > 8 && contents.subarray) { + buffer.set(contents.subarray(position, position + size), offset) + } else { + for (var i = 0; i < size; i++) + buffer[offset + i] = contents[position + i] + } + return size + }, + write(stream, buffer, offset, length, position, canOwn) { + if (buffer.buffer === HEAP8.buffer) { + canOwn = false + } + if (!length) + return 0; + var node = stream.node; + node.timestamp = Date.now(); + if (buffer.subarray && (!node.contents || node.contents.subarray)) { + if (canOwn) { + node.contents = buffer.subarray(offset, offset + length); + node.usedBytes = length; + return length + } else if (node.usedBytes === 0 && position === 0) { + node.contents = buffer.slice(offset, offset + length); + node.usedBytes = length; + return length + } else if (position + length <= node.usedBytes) { + node.contents.set(buffer.subarray(offset, offset + length), position); + return length + } + } + MEMFS.expandFileStorage(node, position + length); + if (node.contents.subarray && buffer.subarray) { + node.contents.set(buffer.subarray(offset, offset + length), position) + } else { + for (var i = 0; i < length; i++) { + node.contents[position + i] = buffer[offset + i] + } + } + node.usedBytes = Math.max(node.usedBytes, position + length); + return length + }, + llseek(stream, offset, whence) { + var position = offset; + if (whence === 1) { + position += stream.position + } else if (whence === 2) { + if (FS.isFile(stream.node.mode)) { + position += stream.node.usedBytes + } + } + if (position < 0) { + throw new FS.ErrnoError(28) + } + return position + }, + allocate(stream, offset, length) { + MEMFS.expandFileStorage(stream.node, offset + length); + stream.node.usedBytes = Math.max(stream.node.usedBytes, offset + length) + }, + mmap(stream, length, position, prot, flags) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + var ptr; + var allocated; + var contents = stream.node.contents; + if (!(flags & 2) && contents.buffer === HEAP8.buffer) { + allocated = false; + ptr = contents.byteOffset + } else { + if (position > 0 || position + length < contents.length) { + if (contents.subarray) { + contents = contents.subarray(position, position + length) + } else { + contents = Array.prototype.slice.call(contents, position, position + length) + } + } + allocated = true; + ptr = mmapAlloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + } + HEAP8.set(contents, ptr) + } + return { + ptr: ptr, + allocated: allocated + } + }, + msync(stream, buffer, offset, length, mmapFlags) { + MEMFS.stream_ops.write(stream, buffer, 0, length, offset, false); + return 0 + } + } +}; +var asyncLoad = (url, onload, onerror, noRunDep) => { + var dep = !noRunDep ? getUniqueRunDependency(`al ${url}`) : ""; + readAsync(url, arrayBuffer => { + onload(new Uint8Array(arrayBuffer)); + if (dep) + removeRunDependency(dep) + } + , event => { + if (onerror) { + onerror() + } else { + throw `Loading data file "${url}" failed.` + } + } + ); + if (dep) + addRunDependency(dep) +} +; +var FS_createDataFile = (parent, name, fileData, canRead, canWrite, canOwn) => { + FS.createDataFile(parent, name, fileData, canRead, canWrite, canOwn) +} +; +var preloadPlugins = Module["preloadPlugins"] || []; +var FS_handledByPreloadPlugin = (byteArray, fullname, finish, onerror) => { + if (typeof Browser != "undefined") + Browser.init(); + var handled = false; + preloadPlugins.forEach(plugin => { + if (handled) + return; + if (plugin["canHandle"](fullname)) { + plugin["handle"](byteArray, fullname, finish, onerror); + handled = true + } + } + ); + return handled +} +; +var FS_createPreloadedFile = (parent, name, url, canRead, canWrite, onload, onerror, dontCreateFile, canOwn, preFinish) => { + var fullname = name ? PATH_FS.resolve(PATH.join2(parent, name)) : parent; + var dep = getUniqueRunDependency(`cp ${fullname}`); + function processData(byteArray) { + function finish(byteArray) { + preFinish?.(); + if (!dontCreateFile) { + FS_createDataFile(parent, name, byteArray, canRead, canWrite, canOwn) + } + onload?.(); + removeRunDependency(dep) + } + if (FS_handledByPreloadPlugin(byteArray, fullname, finish, () => { + onerror?.(); + removeRunDependency(dep) + } + )) { + return + } + finish(byteArray) + } + addRunDependency(dep); + if (typeof url == "string") { + asyncLoad(url, processData, onerror) + } else { + processData(url) + } +} +; +var FS_modeStringToFlags = str => { + var flagModes = { + "r": 0, + "r+": 2, + "w": 512 | 64 | 1, + "w+": 512 | 64 | 2, + "a": 1024 | 64 | 1, + "a+": 1024 | 64 | 2 + }; + var flags = flagModes[str]; + if (typeof flags == "undefined") { + throw new Error(`Unknown file open mode: ${str}`) + } + return flags +} +; +var FS_getMode = (canRead, canWrite) => { + var mode = 0; + if (canRead) + mode |= 292 | 73; + if (canWrite) + mode |= 146; + return mode +} +; +var FS = { + root: null, + mounts: [], + devices: {}, + streams: [], + nextInode: 1, + nameTable: null, + currentPath: "/", + initialized: false, + ignorePermissions: true, + ErrnoError: class { + constructor(errno) { + this.name = "ErrnoError"; + this.errno = errno + } + } + , + genericErrors: {}, + filesystems: null, + syncFSRequests: 0, + lookupPath(path, opts={}) { + path = PATH_FS.resolve(path); + if (!path) + return { + path: "", + node: null + }; + var defaults = { + follow_mount: true, + recurse_count: 0 + }; + opts = Object.assign(defaults, opts); + if (opts.recurse_count > 8) { + throw new FS.ErrnoError(32) + } + var parts = path.split("/").filter(p => !!p); + var current = FS.root; + var current_path = "/"; + for (var i = 0; i < parts.length; i++) { + var islast = i === parts.length - 1; + if (islast && opts.parent) { + break + } + current = FS.lookupNode(current, parts[i]); + current_path = PATH.join2(current_path, parts[i]); + if (FS.isMountpoint(current)) { + if (!islast || islast && opts.follow_mount) { + current = current.mounted.root + } + } + if (!islast || opts.follow) { + var count = 0; + while (FS.isLink(current.mode)) { + var link = FS.readlink(current_path); + current_path = PATH_FS.resolve(PATH.dirname(current_path), link); + var lookup = FS.lookupPath(current_path, { + recurse_count: opts.recurse_count + 1 + }); + current = lookup.node; + if (count++ > 40) { + throw new FS.ErrnoError(32) + } + } + } + } + return { + path: current_path, + node: current + } + }, + getPath(node) { + var path; + while (true) { + if (FS.isRoot(node)) { + var mount = node.mount.mountpoint; + if (!path) + return mount; + return mount[mount.length - 1] !== "/" ? `${mount}/${path}` : mount + path + } + path = path ? `${node.name}/${path}` : node.name; + node = node.parent + } + }, + hashName(parentid, name) { + var hash = 0; + for (var i = 0; i < name.length; i++) { + hash = (hash << 5) - hash + name.charCodeAt(i) | 0 + } + return (parentid + hash >>> 0) % FS.nameTable.length + }, + hashAddNode(node) { + var hash = FS.hashName(node.parent.id, node.name); + node.name_next = FS.nameTable[hash]; + FS.nameTable[hash] = node + }, + hashRemoveNode(node) { + var hash = FS.hashName(node.parent.id, node.name); + if (FS.nameTable[hash] === node) { + FS.nameTable[hash] = node.name_next + } else { + var current = FS.nameTable[hash]; + while (current) { + if (current.name_next === node) { + current.name_next = node.name_next; + break + } + current = current.name_next + } + } + }, + lookupNode(parent, name) { + var errCode = FS.mayLookup(parent); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + var hash = FS.hashName(parent.id, name); + for (var node = FS.nameTable[hash]; node; node = node.name_next) { + var nodeName = node.name; + if (node.parent.id === parent.id && nodeName === name) { + return node + } + } + return FS.lookup(parent, name) + }, + createNode(parent, name, mode, rdev) { + var node = new FS.FSNode(parent,name,mode,rdev); + FS.hashAddNode(node); + return node + }, + destroyNode(node) { + FS.hashRemoveNode(node) + }, + isRoot(node) { + return node === node.parent + }, + isMountpoint(node) { + return !!node.mounted + }, + isFile(mode) { + return (mode & 61440) === 32768 + }, + isDir(mode) { + return (mode & 61440) === 16384 + }, + isLink(mode) { + return (mode & 61440) === 40960 + }, + isChrdev(mode) { + return (mode & 61440) === 8192 + }, + isBlkdev(mode) { + return (mode & 61440) === 24576 + }, + isFIFO(mode) { + return (mode & 61440) === 4096 + }, + isSocket(mode) { + return (mode & 49152) === 49152 + }, + flagsToPermissionString(flag) { + var perms = ["r", "w", "rw"][flag & 3]; + if (flag & 512) { + perms += "w" + } + return perms + }, + nodePermissions(node, perms) { + if (FS.ignorePermissions) { + return 0 + } + if (perms.includes("r") && !(node.mode & 292)) { + return 2 + } else if (perms.includes("w") && !(node.mode & 146)) { + return 2 + } else if (perms.includes("x") && !(node.mode & 73)) { + return 2 + } + return 0 + }, + mayLookup(dir) { + if (!FS.isDir(dir.mode)) + return 54; + var errCode = FS.nodePermissions(dir, "x"); + if (errCode) + return errCode; + if (!dir.node_ops.lookup) + return 2; + return 0 + }, + mayCreate(dir, name) { + try { + var node = FS.lookupNode(dir, name); + return 20 + } catch (e) {} + return FS.nodePermissions(dir, "wx") + }, + mayDelete(dir, name, isdir) { + var node; + try { + node = FS.lookupNode(dir, name) + } catch (e) { + return e.errno + } + var errCode = FS.nodePermissions(dir, "wx"); + if (errCode) { + return errCode + } + if (isdir) { + if (!FS.isDir(node.mode)) { + return 54 + } + if (FS.isRoot(node) || FS.getPath(node) === FS.cwd()) { + return 10 + } + } else { + if (FS.isDir(node.mode)) { + return 31 + } + } + return 0 + }, + mayOpen(node, flags) { + if (!node) { + return 44 + } + if (FS.isLink(node.mode)) { + return 32 + } else if (FS.isDir(node.mode)) { + if (FS.flagsToPermissionString(flags) !== "r" || flags & 512) { + return 31 + } + } + return FS.nodePermissions(node, FS.flagsToPermissionString(flags)) + }, + MAX_OPEN_FDS: 4096, + nextfd() { + for (var fd = 0; fd <= FS.MAX_OPEN_FDS; fd++) { + if (!FS.streams[fd]) { + return fd + } + } + throw new FS.ErrnoError(33) + }, + getStreamChecked(fd) { + var stream = FS.getStream(fd); + if (!stream) { + throw new FS.ErrnoError(8) + } + return stream + }, + getStream: fd => FS.streams[fd], + createStream(stream, fd=-1) { + if (!FS.FSStream) { + FS.FSStream = function() { + this.shared = {} + } + ; + FS.FSStream.prototype = {}; + Object.defineProperties(FS.FSStream.prototype, { + object: { + get() { + return this.node + }, + set(val) { + this.node = val + } + }, + isRead: { + get() { + return (this.flags & 2097155) !== 1 + } + }, + isWrite: { + get() { + return (this.flags & 2097155) !== 0 + } + }, + isAppend: { + get() { + return this.flags & 1024 + } + }, + flags: { + get() { + return this.shared.flags + }, + set(val) { + this.shared.flags = val + } + }, + position: { + get() { + return this.shared.position + }, + set(val) { + this.shared.position = val + } + } + }) + } + stream = Object.assign(new FS.FSStream, stream); + if (fd == -1) { + fd = FS.nextfd() + } + stream.fd = fd; + FS.streams[fd] = stream; + return stream + }, + closeStream(fd) { + FS.streams[fd] = null + }, + chrdev_stream_ops: { + open(stream) { + var device = FS.getDevice(stream.node.rdev); + stream.stream_ops = device.stream_ops; + stream.stream_ops.open?.(stream) + }, + llseek() { + throw new FS.ErrnoError(70) + } + }, + major: dev => dev >> 8, + minor: dev => dev & 255, + makedev: (ma, mi) => ma << 8 | mi, + registerDevice(dev, ops) { + FS.devices[dev] = { + stream_ops: ops + } + }, + getDevice: dev => FS.devices[dev], + getMounts(mount) { + var mounts = []; + var check = [mount]; + while (check.length) { + var m = check.pop(); + mounts.push(m); + check.push.apply(check, m.mounts) + } + return mounts + }, + syncfs(populate, callback) { + if (typeof populate == "function") { + callback = populate; + populate = false + } + FS.syncFSRequests++; + if (FS.syncFSRequests > 1) { + err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`) + } + var mounts = FS.getMounts(FS.root.mount); + var completed = 0; + function doCallback(errCode) { + FS.syncFSRequests--; + return callback(errCode) + } + function done(errCode) { + if (errCode) { + if (!done.errored) { + done.errored = true; + return doCallback(errCode) + } + return + } + if (++completed >= mounts.length) { + doCallback(null) + } + } + mounts.forEach(mount => { + if (!mount.type.syncfs) { + return done(null) + } + mount.type.syncfs(mount, populate, done) + } + ) + }, + mount(type, opts, mountpoint) { + var root = mountpoint === "/"; + var pseudo = !mountpoint; + var node; + if (root && FS.root) { + throw new FS.ErrnoError(10) + } else if (!root && !pseudo) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + mountpoint = lookup.path; + node = lookup.node; + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + if (!FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + } + var mount = { + type: type, + opts: opts, + mountpoint: mountpoint, + mounts: [] + }; + var mountRoot = type.mount(mount); + mountRoot.mount = mount; + mount.root = mountRoot; + if (root) { + FS.root = mountRoot + } else if (node) { + node.mounted = mount; + if (node.mount) { + node.mount.mounts.push(mount) + } + } + return mountRoot + }, + unmount(mountpoint) { + var lookup = FS.lookupPath(mountpoint, { + follow_mount: false + }); + if (!FS.isMountpoint(lookup.node)) { + throw new FS.ErrnoError(28) + } + var node = lookup.node; + var mount = node.mounted; + var mounts = FS.getMounts(mount); + Object.keys(FS.nameTable).forEach(hash => { + var current = FS.nameTable[hash]; + while (current) { + var next = current.name_next; + if (mounts.includes(current.mount)) { + FS.destroyNode(current) + } + current = next + } + } + ); + node.mounted = null; + var idx = node.mount.mounts.indexOf(mount); + node.mount.mounts.splice(idx, 1) + }, + lookup(parent, name) { + return parent.node_ops.lookup(parent, name) + }, + mknod(path, mode, dev) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + if (!name || name === "." || name === "..") { + throw new FS.ErrnoError(28) + } + var errCode = FS.mayCreate(parent, name); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + if (!parent.node_ops.mknod) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.mknod(parent, name, mode, dev) + }, + create(path, mode) { + mode = mode !== undefined ? mode : 438; + mode &= 4095; + mode |= 32768; + return FS.mknod(path, mode, 0) + }, + mkdir(path, mode) { + mode = mode !== undefined ? mode : 511; + mode &= 511 | 512; + mode |= 16384; + return FS.mknod(path, mode, 0) + }, + mkdirTree(path, mode) { + var dirs = path.split("/"); + var d = ""; + for (var i = 0; i < dirs.length; ++i) { + if (!dirs[i]) + continue; + d += "/" + dirs[i]; + try { + FS.mkdir(d, mode) + } catch (e) { + if (e.errno != 20) + throw e + } + } + }, + mkdev(path, mode, dev) { + if (typeof dev == "undefined") { + dev = mode; + mode = 438 + } + mode |= 8192; + return FS.mknod(path, mode, dev) + }, + symlink(oldpath, newpath) { + if (!PATH_FS.resolve(oldpath)) { + throw new FS.ErrnoError(44) + } + var lookup = FS.lookupPath(newpath, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var newname = PATH.basename(newpath); + var errCode = FS.mayCreate(parent, newname); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + if (!parent.node_ops.symlink) { + throw new FS.ErrnoError(63) + } + return parent.node_ops.symlink(parent, newname, oldpath) + }, + rename(old_path, new_path) { + var old_dirname = PATH.dirname(old_path); + var new_dirname = PATH.dirname(new_path); + var old_name = PATH.basename(old_path); + var new_name = PATH.basename(new_path); + var lookup, old_dir, new_dir; + lookup = FS.lookupPath(old_path, { + parent: true + }); + old_dir = lookup.node; + lookup = FS.lookupPath(new_path, { + parent: true + }); + new_dir = lookup.node; + if (!old_dir || !new_dir) + throw new FS.ErrnoError(44); + if (old_dir.mount !== new_dir.mount) { + throw new FS.ErrnoError(75) + } + var old_node = FS.lookupNode(old_dir, old_name); + var relative = PATH_FS.relative(old_path, new_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(28) + } + relative = PATH_FS.relative(new_path, old_dirname); + if (relative.charAt(0) !== ".") { + throw new FS.ErrnoError(55) + } + var new_node; + try { + new_node = FS.lookupNode(new_dir, new_name) + } catch (e) {} + if (old_node === new_node) { + return + } + var isdir = FS.isDir(old_node.mode); + var errCode = FS.mayDelete(old_dir, old_name, isdir); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + errCode = new_node ? FS.mayDelete(new_dir, new_name, isdir) : FS.mayCreate(new_dir, new_name); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + if (!old_dir.node_ops.rename) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(old_node) || new_node && FS.isMountpoint(new_node)) { + throw new FS.ErrnoError(10) + } + if (new_dir !== old_dir) { + errCode = FS.nodePermissions(old_dir, "w"); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + } + FS.hashRemoveNode(old_node); + try { + old_dir.node_ops.rename(old_node, new_dir, new_name) + } catch (e) { + throw e + } finally { + FS.hashAddNode(old_node) + } + }, + rmdir(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var errCode = FS.mayDelete(parent, name, true); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + if (!parent.node_ops.rmdir) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + parent.node_ops.rmdir(parent, name); + FS.destroyNode(node) + }, + readdir(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + if (!node.node_ops.readdir) { + throw new FS.ErrnoError(54) + } + return node.node_ops.readdir(node) + }, + unlink(path) { + var lookup = FS.lookupPath(path, { + parent: true + }); + var parent = lookup.node; + if (!parent) { + throw new FS.ErrnoError(44) + } + var name = PATH.basename(path); + var node = FS.lookupNode(parent, name); + var errCode = FS.mayDelete(parent, name, false); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + if (!parent.node_ops.unlink) { + throw new FS.ErrnoError(63) + } + if (FS.isMountpoint(node)) { + throw new FS.ErrnoError(10) + } + parent.node_ops.unlink(parent, name); + FS.destroyNode(node) + }, + readlink(path) { + var lookup = FS.lookupPath(path); + var link = lookup.node; + if (!link) { + throw new FS.ErrnoError(44) + } + if (!link.node_ops.readlink) { + throw new FS.ErrnoError(28) + } + return PATH_FS.resolve(FS.getPath(link.parent), link.node_ops.readlink(link)) + }, + stat(path, dontFollow) { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + var node = lookup.node; + if (!node) { + throw new FS.ErrnoError(44) + } + if (!node.node_ops.getattr) { + throw new FS.ErrnoError(63) + } + return node.node_ops.getattr(node) + }, + lstat(path) { + return FS.stat(path, true) + }, + chmod(path, mode, dontFollow) { + var node; + if (typeof path == "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + mode: mode & 4095 | node.mode & ~4095, + timestamp: Date.now() + }) + }, + lchmod(path, mode) { + FS.chmod(path, mode, true) + }, + fchmod(fd, mode) { + var stream = FS.getStreamChecked(fd); + FS.chmod(stream.node, mode) + }, + chown(path, uid, gid, dontFollow) { + var node; + if (typeof path == "string") { + var lookup = FS.lookupPath(path, { + follow: !dontFollow + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + node.node_ops.setattr(node, { + timestamp: Date.now() + }) + }, + lchown(path, uid, gid) { + FS.chown(path, uid, gid, true) + }, + fchown(fd, uid, gid) { + var stream = FS.getStreamChecked(fd); + FS.chown(stream.node, uid, gid) + }, + truncate(path, len) { + if (len < 0) { + throw new FS.ErrnoError(28) + } + var node; + if (typeof path == "string") { + var lookup = FS.lookupPath(path, { + follow: true + }); + node = lookup.node + } else { + node = path + } + if (!node.node_ops.setattr) { + throw new FS.ErrnoError(63) + } + if (FS.isDir(node.mode)) { + throw new FS.ErrnoError(31) + } + if (!FS.isFile(node.mode)) { + throw new FS.ErrnoError(28) + } + var errCode = FS.nodePermissions(node, "w"); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + node.node_ops.setattr(node, { + size: len, + timestamp: Date.now() + }) + }, + ftruncate(fd, len) { + var stream = FS.getStreamChecked(fd); + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(28) + } + FS.truncate(stream.node, len) + }, + utime(path, atime, mtime) { + var lookup = FS.lookupPath(path, { + follow: true + }); + var node = lookup.node; + node.node_ops.setattr(node, { + timestamp: Math.max(atime, mtime) + }) + }, + open(path, flags, mode) { + if (path === "") { + throw new FS.ErrnoError(44) + } + flags = typeof flags == "string" ? FS_modeStringToFlags(flags) : flags; + mode = typeof mode == "undefined" ? 438 : mode; + if (flags & 64) { + mode = mode & 4095 | 32768 + } else { + mode = 0 + } + var node; + if (typeof path == "object") { + node = path + } else { + path = PATH.normalize(path); + try { + var lookup = FS.lookupPath(path, { + follow: !(flags & 131072) + }); + node = lookup.node + } catch (e) {} + } + var created = false; + if (flags & 64) { + if (node) { + if (flags & 128) { + throw new FS.ErrnoError(20) + } + } else { + node = FS.mknod(path, mode, 0); + created = true + } + } + if (!node) { + throw new FS.ErrnoError(44) + } + if (FS.isChrdev(node.mode)) { + flags &= ~512 + } + if (flags & 65536 && !FS.isDir(node.mode)) { + throw new FS.ErrnoError(54) + } + if (!created) { + var errCode = FS.mayOpen(node, flags); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + } + if (flags & 512 && !created) { + FS.truncate(node, 0) + } + flags &= ~(128 | 512 | 131072); + var stream = FS.createStream({ + node: node, + path: FS.getPath(node), + flags: flags, + seekable: true, + position: 0, + stream_ops: node.stream_ops, + ungotten: [], + error: false + }); + if (stream.stream_ops.open) { + stream.stream_ops.open(stream) + } + if (Module["logReadFiles"] && !(flags & 1)) { + if (!FS.readFiles) + FS.readFiles = {}; + if (!(path in FS.readFiles)) { + FS.readFiles[path] = 1 + } + } + return stream + }, + close(stream) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (stream.getdents) + stream.getdents = null; + try { + if (stream.stream_ops.close) { + stream.stream_ops.close(stream) + } + } catch (e) { + throw e + } finally { + FS.closeStream(stream.fd) + } + stream.fd = null + }, + isClosed(stream) { + return stream.fd === null + }, + llseek(stream, offset, whence) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (!stream.seekable || !stream.stream_ops.llseek) { + throw new FS.ErrnoError(70) + } + if (whence != 0 && whence != 1 && whence != 2) { + throw new FS.ErrnoError(28) + } + stream.position = stream.stream_ops.llseek(stream, offset, whence); + stream.ungotten = []; + return stream.position + }, + read(stream, buffer, offset, length, position) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.read) { + throw new FS.ErrnoError(28) + } + var seeking = typeof position != "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesRead = stream.stream_ops.read(stream, buffer, offset, length, position); + if (!seeking) + stream.position += bytesRead; + return bytesRead + }, + write(stream, buffer, offset, length, position, canOwn) { + if (length < 0 || position < 0) { + throw new FS.ErrnoError(28) + } + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(31) + } + if (!stream.stream_ops.write) { + throw new FS.ErrnoError(28) + } + if (stream.seekable && stream.flags & 1024) { + FS.llseek(stream, 0, 2) + } + var seeking = typeof position != "undefined"; + if (!seeking) { + position = stream.position + } else if (!stream.seekable) { + throw new FS.ErrnoError(70) + } + var bytesWritten = stream.stream_ops.write(stream, buffer, offset, length, position, canOwn); + if (!seeking) + stream.position += bytesWritten; + return bytesWritten + }, + allocate(stream, offset, length) { + if (FS.isClosed(stream)) { + throw new FS.ErrnoError(8) + } + if (offset < 0 || length <= 0) { + throw new FS.ErrnoError(28) + } + if ((stream.flags & 2097155) === 0) { + throw new FS.ErrnoError(8) + } + if (!FS.isFile(stream.node.mode) && !FS.isDir(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (!stream.stream_ops.allocate) { + throw new FS.ErrnoError(138) + } + stream.stream_ops.allocate(stream, offset, length) + }, + mmap(stream, length, position, prot, flags) { + if ((prot & 2) !== 0 && (flags & 2) === 0 && (stream.flags & 2097155) !== 2) { + throw new FS.ErrnoError(2) + } + if ((stream.flags & 2097155) === 1) { + throw new FS.ErrnoError(2) + } + if (!stream.stream_ops.mmap) { + throw new FS.ErrnoError(43) + } + return stream.stream_ops.mmap(stream, length, position, prot, flags) + }, + msync(stream, buffer, offset, length, mmapFlags) { + if (!stream.stream_ops.msync) { + return 0 + } + return stream.stream_ops.msync(stream, buffer, offset, length, mmapFlags) + }, + munmap: stream => 0, + ioctl(stream, cmd, arg) { + if (!stream.stream_ops.ioctl) { + throw new FS.ErrnoError(59) + } + return stream.stream_ops.ioctl(stream, cmd, arg) + }, + readFile(path, opts={}) { + opts.flags = opts.flags || 0; + opts.encoding = opts.encoding || "binary"; + if (opts.encoding !== "utf8" && opts.encoding !== "binary") { + throw new Error(`Invalid encoding type "${opts.encoding}"`) + } + var ret; + var stream = FS.open(path, opts.flags); + var stat = FS.stat(path); + var length = stat.size; + var buf = new Uint8Array(length); + FS.read(stream, buf, 0, length, 0); + if (opts.encoding === "utf8") { + ret = UTF8ArrayToString(buf, 0) + } else if (opts.encoding === "binary") { + ret = buf + } + FS.close(stream); + return ret + }, + writeFile(path, data, opts={}) { + opts.flags = opts.flags || 577; + var stream = FS.open(path, opts.flags, opts.mode); + if (typeof data == "string") { + var buf = new Uint8Array(lengthBytesUTF8(data) + 1); + var actualNumBytes = stringToUTF8Array(data, buf, 0, buf.length); + FS.write(stream, buf, 0, actualNumBytes, undefined, opts.canOwn) + } else if (ArrayBuffer.isView(data)) { + FS.write(stream, data, 0, data.byteLength, undefined, opts.canOwn) + } else { + throw new Error("Unsupported data type") + } + FS.close(stream) + }, + cwd: () => FS.currentPath, + chdir(path) { + var lookup = FS.lookupPath(path, { + follow: true + }); + if (lookup.node === null) { + throw new FS.ErrnoError(44) + } + if (!FS.isDir(lookup.node.mode)) { + throw new FS.ErrnoError(54) + } + var errCode = FS.nodePermissions(lookup.node, "x"); + if (errCode) { + throw new FS.ErrnoError(errCode) + } + FS.currentPath = lookup.path + }, + createDefaultDirectories() { + FS.mkdir("/tmp"); + FS.mkdir("/home"); + FS.mkdir("/home/web_user") + }, + createDefaultDevices() { + FS.mkdir("/dev"); + FS.registerDevice(FS.makedev(1, 3), { + read: () => 0, + write: (stream, buffer, offset, length, pos) => length + }); + FS.mkdev("/dev/null", FS.makedev(1, 3)); + TTY.register(FS.makedev(5, 0), TTY.default_tty_ops); + TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops); + FS.mkdev("/dev/tty", FS.makedev(5, 0)); + FS.mkdev("/dev/tty1", FS.makedev(6, 0)); + var randomBuffer = new Uint8Array(1024) + , randomLeft = 0; + var randomByte = () => { + if (randomLeft === 0) { + randomLeft = randomFill(randomBuffer).byteLength + } + return randomBuffer[--randomLeft] + } + ; + FS.createDevice("/dev", "random", randomByte); + FS.createDevice("/dev", "urandom", randomByte); + FS.mkdir("/dev/shm"); + FS.mkdir("/dev/shm/tmp") + }, + createSpecialDirectories() { + FS.mkdir("/proc"); + var proc_self = FS.mkdir("/proc/self"); + FS.mkdir("/proc/self/fd"); + FS.mount({ + mount() { + var node = FS.createNode(proc_self, "fd", 16384 | 511, 73); + node.node_ops = { + lookup(parent, name) { + var fd = +name; + var stream = FS.getStreamChecked(fd); + var ret = { + parent: null, + mount: { + mountpoint: "fake" + }, + node_ops: { + readlink: () => stream.path + } + }; + ret.parent = ret; + return ret + } + }; + return node + } + }, {}, "/proc/self/fd") + }, + createStandardStreams() { + if (Module["stdin"]) { + FS.createDevice("/dev", "stdin", Module["stdin"]) + } else { + FS.symlink("/dev/tty", "/dev/stdin") + } + if (Module["stdout"]) { + FS.createDevice("/dev", "stdout", null, Module["stdout"]) + } else { + FS.symlink("/dev/tty", "/dev/stdout") + } + if (Module["stderr"]) { + FS.createDevice("/dev", "stderr", null, Module["stderr"]) + } else { + FS.symlink("/dev/tty1", "/dev/stderr") + } + var stdin = FS.open("/dev/stdin", 0); + var stdout = FS.open("/dev/stdout", 1); + var stderr = FS.open("/dev/stderr", 1) + }, + staticInit() { + [44].forEach(code => { + FS.genericErrors[code] = new FS.ErrnoError(code); + FS.genericErrors[code].stack = "" + } + ); + FS.nameTable = new Array(4096); + FS.mount(MEMFS, {}, "/"); + FS.createDefaultDirectories(); + FS.createDefaultDevices(); + FS.createSpecialDirectories(); + FS.filesystems = { + "MEMFS": MEMFS + } + }, + init(input, output, error) { + FS.init.initialized = true; + Module["stdin"] = input || Module["stdin"]; + Module["stdout"] = output || Module["stdout"]; + Module["stderr"] = error || Module["stderr"]; + FS.createStandardStreams() + }, + quit() { + FS.init.initialized = false; + for (var i = 0; i < FS.streams.length; i++) { + var stream = FS.streams[i]; + if (!stream) { + continue + } + FS.close(stream) + } + }, + findObject(path, dontResolveLastLink) { + var ret = FS.analyzePath(path, dontResolveLastLink); + if (!ret.exists) { + return null + } + return ret.object + }, + analyzePath(path, dontResolveLastLink) { + try { + var lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + path = lookup.path + } catch (e) {} + var ret = { + isRoot: false, + exists: false, + error: 0, + name: null, + path: null, + object: null, + parentExists: false, + parentPath: null, + parentObject: null + }; + try { + var lookup = FS.lookupPath(path, { + parent: true + }); + ret.parentExists = true; + ret.parentPath = lookup.path; + ret.parentObject = lookup.node; + ret.name = PATH.basename(path); + lookup = FS.lookupPath(path, { + follow: !dontResolveLastLink + }); + ret.exists = true; + ret.path = lookup.path; + ret.object = lookup.node; + ret.name = lookup.node.name; + ret.isRoot = lookup.path === "/" + } catch (e) { + ret.error = e.errno + } + return ret + }, + createPath(parent, path, canRead, canWrite) { + parent = typeof parent == "string" ? parent : FS.getPath(parent); + var parts = path.split("/").reverse(); + while (parts.length) { + var part = parts.pop(); + if (!part) + continue; + var current = PATH.join2(parent, part); + try { + FS.mkdir(current) + } catch (e) {} + parent = current + } + return current + }, + createFile(parent, name, properties, canRead, canWrite) { + var path = PATH.join2(typeof parent == "string" ? parent : FS.getPath(parent), name); + var mode = FS_getMode(canRead, canWrite); + return FS.create(path, mode) + }, + createDataFile(parent, name, data, canRead, canWrite, canOwn) { + var path = name; + if (parent) { + parent = typeof parent == "string" ? parent : FS.getPath(parent); + path = name ? PATH.join2(parent, name) : parent + } + var mode = FS_getMode(canRead, canWrite); + var node = FS.create(path, mode); + if (data) { + if (typeof data == "string") { + var arr = new Array(data.length); + for (var i = 0, len = data.length; i < len; ++i) + arr[i] = data.charCodeAt(i); + data = arr + } + FS.chmod(node, mode | 146); + var stream = FS.open(node, 577); + FS.write(stream, data, 0, data.length, 0, canOwn); + FS.close(stream); + FS.chmod(node, mode) + } + }, + createDevice(parent, name, input, output) { + var path = PATH.join2(typeof parent == "string" ? parent : FS.getPath(parent), name); + var mode = FS_getMode(!!input, !!output); + if (!FS.createDevice.major) + FS.createDevice.major = 64; + var dev = FS.makedev(FS.createDevice.major++, 0); + FS.registerDevice(dev, { + open(stream) { + stream.seekable = false + }, + close(stream) { + if (output?.buffer?.length) { + output(10) + } + }, + read(stream, buffer, offset, length, pos) { + var bytesRead = 0; + for (var i = 0; i < length; i++) { + var result; + try { + result = input() + } catch (e) { + throw new FS.ErrnoError(29) + } + if (result === undefined && bytesRead === 0) { + throw new FS.ErrnoError(6) + } + if (result === null || result === undefined) + break; + bytesRead++; + buffer[offset + i] = result + } + if (bytesRead) { + stream.node.timestamp = Date.now() + } + return bytesRead + }, + write(stream, buffer, offset, length, pos) { + for (var i = 0; i < length; i++) { + try { + output(buffer[offset + i]) + } catch (e) { + throw new FS.ErrnoError(29) + } + } + if (length) { + stream.node.timestamp = Date.now() + } + return i + } + }); + return FS.mkdev(path, mode, dev) + }, + forceLoadFile(obj) { + if (obj.isDevice || obj.isFolder || obj.link || obj.contents) + return true; + if (typeof XMLHttpRequest != "undefined") { + throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.") + } else if (read_) { + try { + obj.contents = intArrayFromString(read_(obj.url), true); + obj.usedBytes = obj.contents.length + } catch (e) { + throw new FS.ErrnoError(29) + } + } else { + throw new Error("Cannot load without read() or XMLHttpRequest.") + } + }, + createLazyFile(parent, name, url, canRead, canWrite) { + function LazyUint8Array() { + this.lengthKnown = false; + this.chunks = [] + } + LazyUint8Array.prototype.get = function LazyUint8Array_get(idx) { + if (idx > this.length - 1 || idx < 0) { + return undefined + } + var chunkOffset = idx % this.chunkSize; + var chunkNum = idx / this.chunkSize | 0; + return this.getter(chunkNum)[chunkOffset] + } + ; + LazyUint8Array.prototype.setDataGetter = function LazyUint8Array_setDataGetter(getter) { + this.getter = getter + } + ; + LazyUint8Array.prototype.cacheLength = function LazyUint8Array_cacheLength() { + var xhr = new XMLHttpRequest; + xhr.open("HEAD", url, false); + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) + throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + var datalength = Number(xhr.getResponseHeader("Content-length")); + var header; + var hasByteServing = (header = xhr.getResponseHeader("Accept-Ranges")) && header === "bytes"; + var usesGzip = (header = xhr.getResponseHeader("Content-Encoding")) && header === "gzip"; + var chunkSize = 1024 * 1024; + if (!hasByteServing) + chunkSize = datalength; + var doXHR = (from, to) => { + if (from > to) + throw new Error("invalid range (" + from + ", " + to + ") or no bytes requested!"); + if (to > datalength - 1) + throw new Error("only " + datalength + " bytes available! programmer error!"); + var xhr = new XMLHttpRequest; + xhr.open("GET", url, false); + if (datalength !== chunkSize) + xhr.setRequestHeader("Range", "bytes=" + from + "-" + to); + xhr.responseType = "arraybuffer"; + if (xhr.overrideMimeType) { + xhr.overrideMimeType("text/plain; charset=x-user-defined") + } + xhr.send(null); + if (!(xhr.status >= 200 && xhr.status < 300 || xhr.status === 304)) + throw new Error("Couldn't load " + url + ". Status: " + xhr.status); + if (xhr.response !== undefined) { + return new Uint8Array(xhr.response || []) + } + return intArrayFromString(xhr.responseText || "", true) + } + ; + var lazyArray = this; + lazyArray.setDataGetter(chunkNum => { + var start = chunkNum * chunkSize; + var end = (chunkNum + 1) * chunkSize - 1; + end = Math.min(end, datalength - 1); + if (typeof lazyArray.chunks[chunkNum] == "undefined") { + lazyArray.chunks[chunkNum] = doXHR(start, end) + } + if (typeof lazyArray.chunks[chunkNum] == "undefined") + throw new Error("doXHR failed!"); + return lazyArray.chunks[chunkNum] + } + ); + if (usesGzip || !datalength) { + chunkSize = datalength = 1; + datalength = this.getter(0).length; + chunkSize = datalength; + out("LazyFiles on gzip forces download of the whole file when length is accessed") + } + this._length = datalength; + this._chunkSize = chunkSize; + this.lengthKnown = true + } + ; + if (typeof XMLHttpRequest != "undefined") { + if (!ENVIRONMENT_IS_WORKER) + throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc"; + var lazyArray = new LazyUint8Array; + Object.defineProperties(lazyArray, { + length: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._length + } + }, + chunkSize: { + get: function() { + if (!this.lengthKnown) { + this.cacheLength() + } + return this._chunkSize + } + } + }); + var properties = { + isDevice: false, + contents: lazyArray + } + } else { + var properties = { + isDevice: false, + url: url + } + } + var node = FS.createFile(parent, name, properties, canRead, canWrite); + if (properties.contents) { + node.contents = properties.contents + } else if (properties.url) { + node.contents = null; + node.url = properties.url + } + Object.defineProperties(node, { + usedBytes: { + get: function() { + return this.contents.length + } + } + }); + var stream_ops = {}; + var keys = Object.keys(node.stream_ops); + keys.forEach(key => { + var fn = node.stream_ops[key]; + stream_ops[key] = function forceLoadLazyFile() { + FS.forceLoadFile(node); + return fn.apply(null, arguments) + } + } + ); + function writeChunks(stream, buffer, offset, length, position) { + var contents = stream.node.contents; + if (position >= contents.length) + return 0; + var size = Math.min(contents.length - position, length); + if (contents.slice) { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents[position + i] + } + } else { + for (var i = 0; i < size; i++) { + buffer[offset + i] = contents.get(position + i) + } + } + return size + } + stream_ops.read = (stream, buffer, offset, length, position) => { + FS.forceLoadFile(node); + return writeChunks(stream, buffer, offset, length, position) + } + ; + stream_ops.mmap = (stream, length, position, prot, flags) => { + FS.forceLoadFile(node); + var ptr = mmapAlloc(length); + if (!ptr) { + throw new FS.ErrnoError(48) + } + writeChunks(stream, HEAP8, ptr, length, position); + return { + ptr: ptr, + allocated: true + } + } + ; + node.stream_ops = stream_ops; + return node + } +}; +var UTF8ToString = (ptr, maxBytesToRead) => ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : ""; +var SYSCALLS = { + DEFAULT_POLLMASK: 5, + calculateAt(dirfd, path, allowEmpty) { + if (PATH.isAbs(path)) { + return path + } + var dir; + if (dirfd === -100) { + dir = FS.cwd() + } else { + var dirstream = SYSCALLS.getStreamFromFD(dirfd); + dir = dirstream.path + } + if (path.length == 0) { + if (!allowEmpty) { + throw new FS.ErrnoError(44) + } + return dir + } + return PATH.join2(dir, path) + }, + doStat(func, path, buf) { + var stat = func(path); + HEAP32[buf >> 2] = stat.dev; + HEAP32[buf + 4 >> 2] = stat.mode; + HEAPU32[buf + 8 >> 2] = stat.nlink; + HEAP32[buf + 12 >> 2] = stat.uid; + HEAP32[buf + 16 >> 2] = stat.gid; + HEAP32[buf + 20 >> 2] = stat.rdev; + tempI64 = [stat.size >>> 0, (tempDouble = stat.size, + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[buf + 24 >> 2] = tempI64[0], + HEAP32[buf + 28 >> 2] = tempI64[1]; + HEAP32[buf + 32 >> 2] = 4096; + HEAP32[buf + 36 >> 2] = stat.blocks; + var atime = stat.atime.getTime(); + var mtime = stat.mtime.getTime(); + var ctime = stat.ctime.getTime(); + tempI64 = [Math.floor(atime / 1e3) >>> 0, (tempDouble = Math.floor(atime / 1e3), + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[buf + 40 >> 2] = tempI64[0], + HEAP32[buf + 44 >> 2] = tempI64[1]; + HEAPU32[buf + 48 >> 2] = atime % 1e3 * 1e3; + tempI64 = [Math.floor(mtime / 1e3) >>> 0, (tempDouble = Math.floor(mtime / 1e3), + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[buf + 56 >> 2] = tempI64[0], + HEAP32[buf + 60 >> 2] = tempI64[1]; + HEAPU32[buf + 64 >> 2] = mtime % 1e3 * 1e3; + tempI64 = [Math.floor(ctime / 1e3) >>> 0, (tempDouble = Math.floor(ctime / 1e3), + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[buf + 72 >> 2] = tempI64[0], + HEAP32[buf + 76 >> 2] = tempI64[1]; + HEAPU32[buf + 80 >> 2] = ctime % 1e3 * 1e3; + tempI64 = [stat.ino >>> 0, (tempDouble = stat.ino, + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[buf + 88 >> 2] = tempI64[0], + HEAP32[buf + 92 >> 2] = tempI64[1]; + return 0 + }, + doMsync(addr, stream, len, flags, offset) { + if (!FS.isFile(stream.node.mode)) { + throw new FS.ErrnoError(43) + } + if (flags & 2) { + return 0 + } + var buffer = HEAPU8.slice(addr, addr + len); + FS.msync(stream, buffer, offset, len, flags) + }, + varargs: undefined, + get() { + var ret = HEAP32[+SYSCALLS.varargs >> 2]; + SYSCALLS.varargs += 4; + return ret + }, + getp() { + return SYSCALLS.get() + }, + getStr(ptr) { + var ret = UTF8ToString(ptr); + return ret + }, + getStreamFromFD(fd) { + var stream = FS.getStreamChecked(fd); + return stream + } +}; +function ___syscall_fcntl64(fd, cmd, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(fd); + switch (cmd) { + case 0: + { + var arg = SYSCALLS.get(); + if (arg < 0) { + return -28 + } + while (FS.streams[arg]) { + arg++ + } + var newStream; + newStream = FS.createStream(stream, arg); + return newStream.fd + } + case 1: + case 2: + return 0; + case 3: + return stream.flags; + case 4: + { + var arg = SYSCALLS.get(); + stream.flags |= arg; + return 0 + } + case 12: + { + var arg = SYSCALLS.getp(); + var offset = 0; + HEAP16[arg + offset >> 1] = 2; + return 0 + } + case 13: + case 14: + return 0 + } + return -28 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_fstat64(fd, buf) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + return SYSCALLS.doStat(FS.stat, stream.path, buf) + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +var stringToUTF8 = (str, outPtr, maxBytesToWrite) => stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite); +function ___syscall_getcwd(buf, size) { + try { + if (size === 0) + return -28; + var cwd = FS.cwd(); + var cwdLengthInBytes = lengthBytesUTF8(cwd) + 1; + if (size < cwdLengthInBytes) + return -68; + stringToUTF8(cwd, buf, size); + return cwdLengthInBytes + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_getdents64(fd, dirp, count) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + stream.getdents ||= FS.readdir(stream.path); + var struct_size = 280; + var pos = 0; + var off = FS.llseek(stream, 0, 1); + var idx = Math.floor(off / struct_size); + while (idx < stream.getdents.length && pos + struct_size <= count) { + var id; + var type; + var name = stream.getdents[idx]; + if (name === ".") { + id = stream.node.id; + type = 4 + } else if (name === "..") { + var lookup = FS.lookupPath(stream.path, { + parent: true + }); + id = lookup.node.id; + type = 4 + } else { + var child = FS.lookupNode(stream.node, name); + id = child.id; + type = FS.isChrdev(child.mode) ? 2 : FS.isDir(child.mode) ? 4 : FS.isLink(child.mode) ? 10 : 8 + } + tempI64 = [id >>> 0, (tempDouble = id, + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[dirp + pos >> 2] = tempI64[0], + HEAP32[dirp + pos + 4 >> 2] = tempI64[1]; + tempI64 = [(idx + 1) * struct_size >>> 0, (tempDouble = (idx + 1) * struct_size, + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[dirp + pos + 8 >> 2] = tempI64[0], + HEAP32[dirp + pos + 12 >> 2] = tempI64[1]; + HEAP16[dirp + pos + 16 >> 1] = 280; + HEAP8[dirp + pos + 18 >> 0] = type; + stringToUTF8(name, dirp + pos + 19, 256); + pos += struct_size; + idx += 1 + } + FS.llseek(stream, idx * struct_size, 0); + return pos + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_ioctl(fd, op, varargs) { + SYSCALLS.varargs = varargs; + try { + var stream = SYSCALLS.getStreamFromFD(fd); + switch (op) { + case 21509: + { + if (!stream.tty) + return -59; + return 0 + } + case 21505: + { + if (!stream.tty) + return -59; + if (stream.tty.ops.ioctl_tcgets) { + var termios = stream.tty.ops.ioctl_tcgets(stream); + var argp = SYSCALLS.getp(); + HEAP32[argp >> 2] = termios.c_iflag || 0; + HEAP32[argp + 4 >> 2] = termios.c_oflag || 0; + HEAP32[argp + 8 >> 2] = termios.c_cflag || 0; + HEAP32[argp + 12 >> 2] = termios.c_lflag || 0; + for (var i = 0; i < 32; i++) { + HEAP8[argp + i + 17 >> 0] = termios.c_cc[i] || 0 + } + return 0 + } + return 0 + } + case 21510: + case 21511: + case 21512: + { + if (!stream.tty) + return -59; + return 0 + } + case 21506: + case 21507: + case 21508: + { + if (!stream.tty) + return -59; + if (stream.tty.ops.ioctl_tcsets) { + var argp = SYSCALLS.getp(); + var c_iflag = HEAP32[argp >> 2]; + var c_oflag = HEAP32[argp + 4 >> 2]; + var c_cflag = HEAP32[argp + 8 >> 2]; + var c_lflag = HEAP32[argp + 12 >> 2]; + var c_cc = []; + for (var i = 0; i < 32; i++) { + c_cc.push(HEAP8[argp + i + 17 >> 0]) + } + return stream.tty.ops.ioctl_tcsets(stream.tty, op, { + c_iflag: c_iflag, + c_oflag: c_oflag, + c_cflag: c_cflag, + c_lflag: c_lflag, + c_cc: c_cc + }) + } + return 0 + } + case 21519: + { + if (!stream.tty) + return -59; + var argp = SYSCALLS.getp(); + HEAP32[argp >> 2] = 0; + return 0 + } + case 21520: + { + if (!stream.tty) + return -59; + return -28 + } + case 21531: + { + var argp = SYSCALLS.getp(); + return FS.ioctl(stream, op, argp) + } + case 21523: + { + if (!stream.tty) + return -59; + if (stream.tty.ops.ioctl_tiocgwinsz) { + var winsize = stream.tty.ops.ioctl_tiocgwinsz(stream.tty); + var argp = SYSCALLS.getp(); + HEAP16[argp >> 1] = winsize[0]; + HEAP16[argp + 2 >> 1] = winsize[1] + } + return 0 + } + case 21524: + { + if (!stream.tty) + return -59; + return 0 + } + case 21515: + { + if (!stream.tty) + return -59; + return 0 + } + default: + return -28 + } + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_lstat64(path, buf) { + try { + path = SYSCALLS.getStr(path); + return SYSCALLS.doStat(FS.lstat, path, buf) + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_mkdirat(dirfd, path, mode) { + try { + path = SYSCALLS.getStr(path); + path = SYSCALLS.calculateAt(dirfd, path); + path = PATH.normalize(path); + if (path[path.length - 1] === "/") + path = path.substr(0, path.length - 1); + FS.mkdir(path, mode, 0); + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_newfstatat(dirfd, path, buf, flags) { + try { + path = SYSCALLS.getStr(path); + var nofollow = flags & 256; + var allowEmpty = flags & 4096; + flags = flags & ~6400; + path = SYSCALLS.calculateAt(dirfd, path, allowEmpty); + return SYSCALLS.doStat(nofollow ? FS.lstat : FS.stat, path, buf) + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_openat(dirfd, path, flags, varargs) { + SYSCALLS.varargs = varargs; + try { + path = SYSCALLS.getStr(path); + path = SYSCALLS.calculateAt(dirfd, path); + var mode = varargs ? SYSCALLS.get() : 0; + return FS.open(path, flags, mode).fd + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_readlinkat(dirfd, path, buf, bufsize) { + try { + path = SYSCALLS.getStr(path); + path = SYSCALLS.calculateAt(dirfd, path); + if (bufsize <= 0) + return -28; + var ret = FS.readlink(path); + var len = Math.min(bufsize, lengthBytesUTF8(ret)); + var endChar = HEAP8[buf + len]; + stringToUTF8(ret, buf, bufsize + 1); + HEAP8[buf + len] = endChar; + return len + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_rmdir(path) { + try { + path = SYSCALLS.getStr(path); + FS.rmdir(path); + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_stat64(path, buf) { + try { + path = SYSCALLS.getStr(path); + return SYSCALLS.doStat(FS.stat, path, buf) + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function ___syscall_unlinkat(dirfd, path, flags) { + try { + path = SYSCALLS.getStr(path); + path = SYSCALLS.calculateAt(dirfd, path); + if (flags === 0) { + FS.unlink(path) + } else if (flags === 512) { + FS.rmdir(path) + } else { + abort("Invalid flags passed to unlinkat") + } + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +var nowIsMonotonic = 1; +var __emscripten_get_now_is_monotonic = () => nowIsMonotonic; +var convertI32PairToI53Checked = (lo, hi) => hi + 2097152 >>> 0 < 4194305 - !!lo ? (lo >>> 0) + hi * 4294967296 : NaN; +function __gmtime_js(time_low, time_high, tmPtr) { + var time = convertI32PairToI53Checked(time_low, time_high); + var date = new Date(time * 1e3); + HEAP32[tmPtr >> 2] = date.getUTCSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getUTCMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getUTCHours(); + HEAP32[tmPtr + 12 >> 2] = date.getUTCDate(); + HEAP32[tmPtr + 16 >> 2] = date.getUTCMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getUTCFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getUTCDay(); + var start = Date.UTC(date.getUTCFullYear(), 0, 1, 0, 0, 0, 0); + var yday = (date.getTime() - start) / (1e3 * 60 * 60 * 24) | 0; + HEAP32[tmPtr + 28 >> 2] = yday +} +var isLeapYear = year => year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); +var MONTH_DAYS_LEAP_CUMULATIVE = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335]; +var MONTH_DAYS_REGULAR_CUMULATIVE = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334]; +var ydayFromDate = date => { + var leap = isLeapYear(date.getFullYear()); + var monthDaysCumulative = leap ? MONTH_DAYS_LEAP_CUMULATIVE : MONTH_DAYS_REGULAR_CUMULATIVE; + var yday = monthDaysCumulative[date.getMonth()] + date.getDate() - 1; + return yday +} +; +function __localtime_js(time_low, time_high, tmPtr) { + var time = convertI32PairToI53Checked(time_low, time_high); + var date = new Date(time * 1e3); + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getFullYear() - 1900; + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var yday = ydayFromDate(date) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr + 36 >> 2] = -(date.getTimezoneOffset() * 60); + var start = new Date(date.getFullYear(),0,1); + var summerOffset = new Date(date.getFullYear(),6,1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dst = (summerOffset != winterOffset && date.getTimezoneOffset() == Math.min(winterOffset, summerOffset)) | 0; + HEAP32[tmPtr + 32 >> 2] = dst +} +var __mktime_js = function(tmPtr) { + var ret = ( () => { + var date = new Date(HEAP32[tmPtr + 20 >> 2] + 1900,HEAP32[tmPtr + 16 >> 2],HEAP32[tmPtr + 12 >> 2],HEAP32[tmPtr + 8 >> 2],HEAP32[tmPtr + 4 >> 2],HEAP32[tmPtr >> 2],0); + var dst = HEAP32[tmPtr + 32 >> 2]; + var guessedOffset = date.getTimezoneOffset(); + var start = new Date(date.getFullYear(),0,1); + var summerOffset = new Date(date.getFullYear(),6,1).getTimezoneOffset(); + var winterOffset = start.getTimezoneOffset(); + var dstOffset = Math.min(winterOffset, summerOffset); + if (dst < 0) { + HEAP32[tmPtr + 32 >> 2] = Number(summerOffset != winterOffset && dstOffset == guessedOffset) + } else if (dst > 0 != (dstOffset == guessedOffset)) { + var nonDstOffset = Math.max(winterOffset, summerOffset); + var trueOffset = dst > 0 ? dstOffset : nonDstOffset; + date.setTime(date.getTime() + (trueOffset - guessedOffset) * 6e4) + } + HEAP32[tmPtr + 24 >> 2] = date.getDay(); + var yday = ydayFromDate(date) | 0; + HEAP32[tmPtr + 28 >> 2] = yday; + HEAP32[tmPtr >> 2] = date.getSeconds(); + HEAP32[tmPtr + 4 >> 2] = date.getMinutes(); + HEAP32[tmPtr + 8 >> 2] = date.getHours(); + HEAP32[tmPtr + 12 >> 2] = date.getDate(); + HEAP32[tmPtr + 16 >> 2] = date.getMonth(); + HEAP32[tmPtr + 20 >> 2] = date.getYear(); + var timeMs = date.getTime(); + if (isNaN(timeMs)) { + return -1 + } + return timeMs / 1e3 + } + )(); + return setTempRet0((tempDouble = ret, + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)), + ret >>> 0 +}; +function __mmap_js(len, prot, flags, fd, offset_low, offset_high, allocated, addr) { + var offset = convertI32PairToI53Checked(offset_low, offset_high); + try { + if (isNaN(offset)) + return 61; + var stream = SYSCALLS.getStreamFromFD(fd); + var res = FS.mmap(stream, len, offset, prot, flags); + var ptr = res.ptr; + HEAP32[allocated >> 2] = res.allocated; + HEAPU32[addr >> 2] = ptr; + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +function __munmap_js(addr, len, prot, flags, fd, offset_low, offset_high) { + var offset = convertI32PairToI53Checked(offset_low, offset_high); + try { + if (isNaN(offset)) + return 61; + var stream = SYSCALLS.getStreamFromFD(fd); + if (prot & 2) { + SYSCALLS.doMsync(addr, stream, len, flags, offset) + } + FS.munmap(stream) + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return -e.errno + } +} +var stringToNewUTF8 = str => { + var size = lengthBytesUTF8(str) + 1; + var ret = _malloc(size); + if (ret) + stringToUTF8(str, ret, size); + return ret +} +; +var __tzset_js = (timezone, daylight, tzname) => { + var currentYear = (new Date).getFullYear(); + var winter = new Date(currentYear,0,1); + var summer = new Date(currentYear,6,1); + var winterOffset = winter.getTimezoneOffset(); + var summerOffset = summer.getTimezoneOffset(); + var stdTimezoneOffset = Math.max(winterOffset, summerOffset); + HEAPU32[timezone >> 2] = stdTimezoneOffset * 60; + HEAP32[daylight >> 2] = Number(winterOffset != summerOffset); + function extractZone(date) { + var match = date.toTimeString().match(/\(([A-Za-z ]+)\)$/); + return match ? match[1] : "GMT" + } + var winterName = extractZone(winter); + var summerName = extractZone(summer); + var winterNamePtr = stringToNewUTF8(winterName); + var summerNamePtr = stringToNewUTF8(summerName); + if (summerOffset < winterOffset) { + HEAPU32[tzname >> 2] = winterNamePtr; + HEAPU32[tzname + 4 >> 2] = summerNamePtr + } else { + HEAPU32[tzname >> 2] = summerNamePtr; + HEAPU32[tzname + 4 >> 2] = winterNamePtr + } +} +; +var _abort = () => { + abort("") +} +; +var readEmAsmArgsArray = []; +var readEmAsmArgs = (sigPtr, buf) => { + readEmAsmArgsArray.length = 0; + var ch; + while (ch = HEAPU8[sigPtr++]) { + var wide = ch != 105; + wide &= ch != 112; + buf += wide && buf % 8 ? 4 : 0; + readEmAsmArgsArray.push(ch == 112 ? HEAPU32[buf >> 2] : ch == 105 ? HEAP32[buf >> 2] : HEAPF64[buf >> 3]); + buf += wide ? 8 : 4 + } + return readEmAsmArgsArray +} +; +var runEmAsmFunction = (code, sigPtr, argbuf) => { + var args = readEmAsmArgs(sigPtr, argbuf); + return ASM_CONSTS[code].apply(null, args) +} +; +var _emscripten_asm_const_int = (code, sigPtr, argbuf) => runEmAsmFunction(code, sigPtr, argbuf); +var _emscripten_date_now = () => Date.now(); +var getHeapMax = () => 2147483648; +var _emscripten_get_heap_max = () => getHeapMax(); +var _emscripten_get_now; +_emscripten_get_now = () => performance.now(); +var _emscripten_memcpy_js = (dest, src, num) => HEAPU8.copyWithin(dest, src, src + num); +var growMemory = size => { + var b = wasmMemory.buffer; + var pages = (size - b.byteLength + 65535) / 65536; + try { + wasmMemory.grow(pages); + updateMemoryViews(); + return 1 + } catch (e) {} +} +; +var _emscripten_resize_heap = requestedSize => { + var oldSize = HEAPU8.length; + requestedSize >>>= 0; + var maxHeapSize = getHeapMax(); + if (requestedSize > maxHeapSize) { + return false + } + var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple; + for (var cutDown = 1; cutDown <= 4; cutDown *= 2) { + var overGrownHeapSize = oldSize * (1 + .2 / cutDown); + overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296); + var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536)); + var replacement = growMemory(newSize); + if (replacement) { + return true + } + } + return false +} +; +var ENV = {}; +var getExecutableName = () => thisProgram || "./this.program"; +var getEnvStrings = () => { + if (!getEnvStrings.strings) { + var lang = (typeof navigator == "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8"; + var env = { + "USER": "web_user", + "LOGNAME": "web_user", + "PATH": "/", + "PWD": "/", + "HOME": "/home/web_user", + "LANG": lang, + "_": getExecutableName() + }; + for (var x in ENV) { + if (ENV[x] === undefined) + delete env[x]; + else + env[x] = ENV[x] + } + var strings = []; + for (var x in env) { + strings.push(`${x}=${env[x]}`) + } + getEnvStrings.strings = strings + } + return getEnvStrings.strings +} +; +var stringToAscii = (str, buffer) => { + for (var i = 0; i < str.length; ++i) { + HEAP8[buffer++ >> 0] = str.charCodeAt(i) + } + HEAP8[buffer >> 0] = 0 +} +; +var _environ_get = (__environ, environ_buf) => { + var bufSize = 0; + getEnvStrings().forEach( (string, i) => { + var ptr = environ_buf + bufSize; + HEAPU32[__environ + i * 4 >> 2] = ptr; + stringToAscii(string, ptr); + bufSize += string.length + 1 + } + ); + return 0 +} +; +var _environ_sizes_get = (penviron_count, penviron_buf_size) => { + var strings = getEnvStrings(); + HEAPU32[penviron_count >> 2] = strings.length; + var bufSize = 0; + strings.forEach(string => bufSize += string.length + 1); + HEAPU32[penviron_buf_size >> 2] = bufSize; + return 0 +} +; +var runtimeKeepaliveCounter = 0; +var keepRuntimeAlive = () => noExitRuntime || runtimeKeepaliveCounter > 0; +var _proc_exit = code => { + EXITSTATUS = code; + if (!keepRuntimeAlive()) { + Module["onExit"]?.(code); + ABORT = true + } + quit_(code, new ExitStatus(code)) +} +; +var exitJS = (status, implicit) => { + EXITSTATUS = status; + _proc_exit(status) +} +; +var _exit = exitJS; +function _fd_close(fd) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + FS.close(stream); + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return e.errno + } +} +var doReadv = (stream, iov, iovcnt, offset) => { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAPU32[iov >> 2]; + var len = HEAPU32[iov + 4 >> 2]; + iov += 8; + var curr = FS.read(stream, HEAP8, ptr, len, offset); + if (curr < 0) + return -1; + ret += curr; + if (curr < len) + break; + if (typeof offset !== "undefined") { + offset += curr + } + } + return ret +} +; +function _fd_read(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = doReadv(stream, iov, iovcnt); + HEAPU32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return e.errno + } +} +function _fd_seek(fd, offset_low, offset_high, whence, newOffset) { + var offset = convertI32PairToI53Checked(offset_low, offset_high); + try { + if (isNaN(offset)) + return 61; + var stream = SYSCALLS.getStreamFromFD(fd); + FS.llseek(stream, offset, whence); + tempI64 = [stream.position >>> 0, (tempDouble = stream.position, + +Math.abs(tempDouble) >= 1 ? tempDouble > 0 ? +Math.floor(tempDouble / 4294967296) >>> 0 : ~~+Math.ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], + HEAP32[newOffset >> 2] = tempI64[0], + HEAP32[newOffset + 4 >> 2] = tempI64[1]; + if (stream.getdents && offset === 0 && whence === 0) + stream.getdents = null; + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return e.errno + } +} +var doWritev = (stream, iov, iovcnt, offset) => { + var ret = 0; + for (var i = 0; i < iovcnt; i++) { + var ptr = HEAPU32[iov >> 2]; + var len = HEAPU32[iov + 4 >> 2]; + iov += 8; + var curr = FS.write(stream, HEAP8, ptr, len, offset); + if (curr < 0) + return -1; + ret += curr; + if (typeof offset !== "undefined") { + offset += curr + } + } + return ret +} +; +function _fd_write(fd, iov, iovcnt, pnum) { + try { + var stream = SYSCALLS.getStreamFromFD(fd); + var num = doWritev(stream, iov, iovcnt); + HEAPU32[pnum >> 2] = num; + return 0 + } catch (e) { + if (typeof FS == "undefined" || !(e.name === "ErrnoError")) + throw e; + return e.errno + } +} +var arraySum = (array, index) => { + var sum = 0; + for (var i = 0; i <= index; sum += array[i++]) {} + return sum +} +; +var MONTH_DAYS_LEAP = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var MONTH_DAYS_REGULAR = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; +var addDays = (date, days) => { + var newDate = new Date(date.getTime()); + while (days > 0) { + var leap = isLeapYear(newDate.getFullYear()); + var currentMonth = newDate.getMonth(); + var daysInCurrentMonth = (leap ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR)[currentMonth]; + if (days > daysInCurrentMonth - newDate.getDate()) { + days -= daysInCurrentMonth - newDate.getDate() + 1; + newDate.setDate(1); + if (currentMonth < 11) { + newDate.setMonth(currentMonth + 1) + } else { + newDate.setMonth(0); + newDate.setFullYear(newDate.getFullYear() + 1) + } + } else { + newDate.setDate(newDate.getDate() + days); + return newDate + } + } + return newDate +} +; +var writeArrayToMemory = (array, buffer) => { + HEAP8.set(array, buffer) +} +; +var _strftime = (s, maxsize, format, tm) => { + var tm_zone = HEAPU32[tm + 40 >> 2]; + var date = { + tm_sec: HEAP32[tm >> 2], + tm_min: HEAP32[tm + 4 >> 2], + tm_hour: HEAP32[tm + 8 >> 2], + tm_mday: HEAP32[tm + 12 >> 2], + tm_mon: HEAP32[tm + 16 >> 2], + tm_year: HEAP32[tm + 20 >> 2], + tm_wday: HEAP32[tm + 24 >> 2], + tm_yday: HEAP32[tm + 28 >> 2], + tm_isdst: HEAP32[tm + 32 >> 2], + tm_gmtoff: HEAP32[tm + 36 >> 2], + tm_zone: tm_zone ? UTF8ToString(tm_zone) : "" + }; + var pattern = UTF8ToString(format); + var EXPANSION_RULES_1 = { + "%c": "%a %b %d %H:%M:%S %Y", + "%D": "%m/%d/%y", + "%F": "%Y-%m-%d", + "%h": "%b", + "%r": "%I:%M:%S %p", + "%R": "%H:%M", + "%T": "%H:%M:%S", + "%x": "%m/%d/%y", + "%X": "%H:%M:%S", + "%Ec": "%c", + "%EC": "%C", + "%Ex": "%m/%d/%y", + "%EX": "%H:%M:%S", + "%Ey": "%y", + "%EY": "%Y", + "%Od": "%d", + "%Oe": "%e", + "%OH": "%H", + "%OI": "%I", + "%Om": "%m", + "%OM": "%M", + "%OS": "%S", + "%Ou": "%u", + "%OU": "%U", + "%OV": "%V", + "%Ow": "%w", + "%OW": "%W", + "%Oy": "%y" + }; + for (var rule in EXPANSION_RULES_1) { + pattern = pattern.replace(new RegExp(rule,"g"), EXPANSION_RULES_1[rule]) + } + var WEEKDAYS = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]; + var MONTHS = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; + function leadingSomething(value, digits, character) { + var str = typeof value == "number" ? value.toString() : value || ""; + while (str.length < digits) { + str = character[0] + str + } + return str + } + function leadingNulls(value, digits) { + return leadingSomething(value, digits, "0") + } + function compareByDay(date1, date2) { + function sgn(value) { + return value < 0 ? -1 : value > 0 ? 1 : 0 + } + var compare; + if ((compare = sgn(date1.getFullYear() - date2.getFullYear())) === 0) { + if ((compare = sgn(date1.getMonth() - date2.getMonth())) === 0) { + compare = sgn(date1.getDate() - date2.getDate()) + } + } + return compare + } + function getFirstWeekStartDate(janFourth) { + switch (janFourth.getDay()) { + case 0: + return new Date(janFourth.getFullYear() - 1,11,29); + case 1: + return janFourth; + case 2: + return new Date(janFourth.getFullYear(),0,3); + case 3: + return new Date(janFourth.getFullYear(),0,2); + case 4: + return new Date(janFourth.getFullYear(),0,1); + case 5: + return new Date(janFourth.getFullYear() - 1,11,31); + case 6: + return new Date(janFourth.getFullYear() - 1,11,30) + } + } + function getWeekBasedYear(date) { + var thisDate = addDays(new Date(date.tm_year + 1900,0,1), date.tm_yday); + var janFourthThisYear = new Date(thisDate.getFullYear(),0,4); + var janFourthNextYear = new Date(thisDate.getFullYear() + 1,0,4); + var firstWeekStartThisYear = getFirstWeekStartDate(janFourthThisYear); + var firstWeekStartNextYear = getFirstWeekStartDate(janFourthNextYear); + if (compareByDay(firstWeekStartThisYear, thisDate) <= 0) { + if (compareByDay(firstWeekStartNextYear, thisDate) <= 0) { + return thisDate.getFullYear() + 1 + } + return thisDate.getFullYear() + } + return thisDate.getFullYear() - 1 + } + var EXPANSION_RULES_2 = { + "%a": date => WEEKDAYS[date.tm_wday].substring(0, 3), + "%A": date => WEEKDAYS[date.tm_wday], + "%b": date => MONTHS[date.tm_mon].substring(0, 3), + "%B": date => MONTHS[date.tm_mon], + "%C": date => { + var year = date.tm_year + 1900; + return leadingNulls(year / 100 | 0, 2) + } + , + "%d": date => leadingNulls(date.tm_mday, 2), + "%e": date => leadingSomething(date.tm_mday, 2, " "), + "%g": date => getWeekBasedYear(date).toString().substring(2), + "%G": getWeekBasedYear, + "%H": date => leadingNulls(date.tm_hour, 2), + "%I": date => { + var twelveHour = date.tm_hour; + if (twelveHour == 0) + twelveHour = 12; + else if (twelveHour > 12) + twelveHour -= 12; + return leadingNulls(twelveHour, 2) + } + , + "%j": date => leadingNulls(date.tm_mday + arraySum(isLeapYear(date.tm_year + 1900) ? MONTH_DAYS_LEAP : MONTH_DAYS_REGULAR, date.tm_mon - 1), 3), + "%m": date => leadingNulls(date.tm_mon + 1, 2), + "%M": date => leadingNulls(date.tm_min, 2), + "%n": () => "\n", + "%p": date => { + if (date.tm_hour >= 0 && date.tm_hour < 12) { + return "AM" + } + return "PM" + } + , + "%S": date => leadingNulls(date.tm_sec, 2), + "%t": () => "\t", + "%u": date => date.tm_wday || 7, + "%U": date => { + var days = date.tm_yday + 7 - date.tm_wday; + return leadingNulls(Math.floor(days / 7), 2) + } + , + "%V": date => { + var val = Math.floor((date.tm_yday + 7 - (date.tm_wday + 6) % 7) / 7); + if ((date.tm_wday + 371 - date.tm_yday - 2) % 7 <= 2) { + val++ + } + if (!val) { + val = 52; + var dec31 = (date.tm_wday + 7 - date.tm_yday - 1) % 7; + if (dec31 == 4 || dec31 == 5 && isLeapYear(date.tm_year % 400 - 1)) { + val++ + } + } else if (val == 53) { + var jan1 = (date.tm_wday + 371 - date.tm_yday) % 7; + if (jan1 != 4 && (jan1 != 3 || !isLeapYear(date.tm_year))) + val = 1 + } + return leadingNulls(val, 2) + } + , + "%w": date => date.tm_wday, + "%W": date => { + var days = date.tm_yday + 7 - (date.tm_wday + 6) % 7; + return leadingNulls(Math.floor(days / 7), 2) + } + , + "%y": date => (date.tm_year + 1900).toString().substring(2), + "%Y": date => date.tm_year + 1900, + "%z": date => { + var off = date.tm_gmtoff; + var ahead = off >= 0; + off = Math.abs(off) / 60; + off = off / 60 * 100 + off % 60; + return (ahead ? "+" : "-") + String("0000" + off).slice(-4) + } + , + "%Z": date => date.tm_zone, + "%%": () => "%" + }; + pattern = pattern.replace(/%%/g, "\0\0"); + for (var rule in EXPANSION_RULES_2) { + if (pattern.includes(rule)) { + pattern = pattern.replace(new RegExp(rule,"g"), EXPANSION_RULES_2[rule](date)) + } + } + pattern = pattern.replace(/\0\0/g, "%"); + var bytes = intArrayFromString(pattern, false); + if (bytes.length > maxsize) { + return 0 + } + writeArrayToMemory(bytes, s); + return bytes.length - 1 +} +; +var _strftime_l = (s, maxsize, format, tm, loc) => _strftime(s, maxsize, format, tm); +var getCFunc = ident => { + var func = Module["_" + ident]; + return func +} +; +var stringToUTF8OnStack = str => { + var size = lengthBytesUTF8(str) + 1; + var ret = stackAlloc(size); + stringToUTF8(str, ret, size); + return ret +} +; +var ccall = (ident, returnType, argTypes, args, opts) => { + var toC = { + "string": str => { + var ret = 0; + if (str !== null && str !== undefined && str !== 0) { + ret = stringToUTF8OnStack(str) + } + return ret + } + , + "array": arr => { + var ret = stackAlloc(arr.length); + writeArrayToMemory(arr, ret); + return ret + } + }; + function convertReturnValue(ret) { + if (returnType === "string") { + return UTF8ToString(ret) + } + if (returnType === "boolean") + return Boolean(ret); + return ret + } + var func = getCFunc(ident); + var cArgs = []; + var stack = 0; + if (args) { + for (var i = 0; i < args.length; i++) { + var converter = toC[argTypes[i]]; + if (converter) { + if (stack === 0) + stack = stackSave(); + cArgs[i] = converter(args[i]) + } else { + cArgs[i] = args[i] + } + } + } + var ret = func.apply(null, cArgs); + function onDone(ret) { + if (stack !== 0) + stackRestore(stack); + return convertReturnValue(ret) + } + ret = onDone(ret); + return ret +} +; +var FSNode = function(parent, name, mode, rdev) { + if (!parent) { + parent = this + } + this.parent = parent; + this.mount = parent.mount; + this.mounted = null; + this.id = FS.nextInode++; + this.name = name; + this.mode = mode; + this.node_ops = {}; + this.stream_ops = {}; + this.rdev = rdev +}; +var readMode = 292 | 73; +var writeMode = 146; +Object.defineProperties(FSNode.prototype, { + read: { + get: function() { + return (this.mode & readMode) === readMode + }, + set: function(val) { + val ? this.mode |= readMode : this.mode &= ~readMode + } + }, + write: { + get: function() { + return (this.mode & writeMode) === writeMode + }, + set: function(val) { + val ? this.mode |= writeMode : this.mode &= ~writeMode + } + }, + isFolder: { + get: function() { + return FS.isDir(this.mode) + } + }, + isDevice: { + get: function() { + return FS.isChrdev(this.mode) + } + } +}); +FS.FSNode = FSNode; +FS.createPreloadedFile = FS_createPreloadedFile; +FS.staticInit(); +Module["FS_createPath"] = FS.createPath; +Module["FS_createDataFile"] = FS.createDataFile; +Module["FS_createPreloadedFile"] = FS.createPreloadedFile; +Module["FS_unlink"] = FS.unlink; +Module["FS_createLazyFile"] = FS.createLazyFile; +Module["FS_createDevice"] = FS.createDevice; +var wasmImports = { + a: ___cxa_throw, + e: ___syscall_fcntl64, + F: ___syscall_fstat64, + x: ___syscall_getcwd, + A: ___syscall_getdents64, + H: ___syscall_ioctl, + C: ___syscall_lstat64, + B: ___syscall_mkdirat, + D: ___syscall_newfstatat, + j: ___syscall_openat, + w: ___syscall_readlinkat, + y: ___syscall_rmdir, + E: ___syscall_stat64, + z: ___syscall_unlinkat, + I: __emscripten_get_now_is_monotonic, + q: __gmtime_js, + r: __localtime_js, + s: __mktime_js, + o: __mmap_js, + p: __munmap_js, + G: __tzset_js, + f: _abort, + v: _emscripten_asm_const_int, + k: _emscripten_date_now, + l: _emscripten_get_heap_max, + c: _emscripten_get_now, + K: _emscripten_memcpy_js, + J: _emscripten_resize_heap, + m: _environ_get, + n: _environ_sizes_get, + b: _exit, + g: _fd_close, + i: _fd_read, + t: _fd_seek, + h: _fd_write, + u: _strftime, + d: _strftime_l +}; +var wasmExports = createWasm(); +var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports["M"])(); +var _CopyHeap = Module["_CopyHeap"] = (a0, a1, a2) => (_CopyHeap = Module["_CopyHeap"] = wasmExports["N"])(a0, a1, a2); +var _SherpaOnnxCreateOfflineRecognizer = Module["_SherpaOnnxCreateOfflineRecognizer"] = a0 => (_SherpaOnnxCreateOfflineRecognizer = Module["_SherpaOnnxCreateOfflineRecognizer"] = wasmExports["O"])(a0); +var _SherpaOnnxDestroyOfflineRecognizer = Module["_SherpaOnnxDestroyOfflineRecognizer"] = a0 => (_SherpaOnnxDestroyOfflineRecognizer = Module["_SherpaOnnxDestroyOfflineRecognizer"] = wasmExports["P"])(a0); +var _SherpaOnnxCreateOfflineStream = Module["_SherpaOnnxCreateOfflineStream"] = a0 => (_SherpaOnnxCreateOfflineStream = Module["_SherpaOnnxCreateOfflineStream"] = wasmExports["Q"])(a0); +var _SherpaOnnxDestroyOfflineStream = Module["_SherpaOnnxDestroyOfflineStream"] = a0 => (_SherpaOnnxDestroyOfflineStream = Module["_SherpaOnnxDestroyOfflineStream"] = wasmExports["R"])(a0); +var _SherpaOnnxAcceptWaveformOffline = Module["_SherpaOnnxAcceptWaveformOffline"] = (a0, a1, a2, a3) => (_SherpaOnnxAcceptWaveformOffline = Module["_SherpaOnnxAcceptWaveformOffline"] = wasmExports["S"])(a0, a1, a2, a3); +var _SherpaOnnxDecodeOfflineStream = Module["_SherpaOnnxDecodeOfflineStream"] = (a0, a1) => (_SherpaOnnxDecodeOfflineStream = Module["_SherpaOnnxDecodeOfflineStream"] = wasmExports["T"])(a0, a1); +var _SherpaOnnxDecodeMultipleOfflineStreams = Module["_SherpaOnnxDecodeMultipleOfflineStreams"] = (a0, a1, a2) => (_SherpaOnnxDecodeMultipleOfflineStreams = Module["_SherpaOnnxDecodeMultipleOfflineStreams"] = wasmExports["U"])(a0, a1, a2); +var _SherpaOnnxGetOfflineStreamResult = Module["_SherpaOnnxGetOfflineStreamResult"] = a0 => (_SherpaOnnxGetOfflineStreamResult = Module["_SherpaOnnxGetOfflineStreamResult"] = wasmExports["V"])(a0); +var _SherpaOnnxDestroyOfflineRecognizerResult = Module["_SherpaOnnxDestroyOfflineRecognizerResult"] = a0 => (_SherpaOnnxDestroyOfflineRecognizerResult = Module["_SherpaOnnxDestroyOfflineRecognizerResult"] = wasmExports["W"])(a0); +var _SherpaOnnxGetOfflineStreamResultAsJson = Module["_SherpaOnnxGetOfflineStreamResultAsJson"] = a0 => (_SherpaOnnxGetOfflineStreamResultAsJson = Module["_SherpaOnnxGetOfflineStreamResultAsJson"] = wasmExports["X"])(a0); +var _SherpaOnnxDestroyOfflineStreamResultJson = Module["_SherpaOnnxDestroyOfflineStreamResultJson"] = a0 => (_SherpaOnnxDestroyOfflineStreamResultJson = Module["_SherpaOnnxDestroyOfflineStreamResultJson"] = wasmExports["Y"])(a0); +var _SherpaOnnxCreateCircularBuffer = Module["_SherpaOnnxCreateCircularBuffer"] = a0 => (_SherpaOnnxCreateCircularBuffer = Module["_SherpaOnnxCreateCircularBuffer"] = wasmExports["Z"])(a0); +var _SherpaOnnxDestroyCircularBuffer = Module["_SherpaOnnxDestroyCircularBuffer"] = a0 => (_SherpaOnnxDestroyCircularBuffer = Module["_SherpaOnnxDestroyCircularBuffer"] = wasmExports["_"])(a0); +var _SherpaOnnxCircularBufferPush = Module["_SherpaOnnxCircularBufferPush"] = (a0, a1, a2) => (_SherpaOnnxCircularBufferPush = Module["_SherpaOnnxCircularBufferPush"] = wasmExports["$"])(a0, a1, a2); +var _SherpaOnnxCircularBufferGet = Module["_SherpaOnnxCircularBufferGet"] = (a0, a1, a2) => (_SherpaOnnxCircularBufferGet = Module["_SherpaOnnxCircularBufferGet"] = wasmExports["aa"])(a0, a1, a2); +var _SherpaOnnxCircularBufferFree = Module["_SherpaOnnxCircularBufferFree"] = a0 => (_SherpaOnnxCircularBufferFree = Module["_SherpaOnnxCircularBufferFree"] = wasmExports["ba"])(a0); +var _SherpaOnnxCircularBufferPop = Module["_SherpaOnnxCircularBufferPop"] = (a0, a1) => (_SherpaOnnxCircularBufferPop = Module["_SherpaOnnxCircularBufferPop"] = wasmExports["ca"])(a0, a1); +var _SherpaOnnxCircularBufferSize = Module["_SherpaOnnxCircularBufferSize"] = a0 => (_SherpaOnnxCircularBufferSize = Module["_SherpaOnnxCircularBufferSize"] = wasmExports["da"])(a0); +var _SherpaOnnxCircularBufferHead = Module["_SherpaOnnxCircularBufferHead"] = a0 => (_SherpaOnnxCircularBufferHead = Module["_SherpaOnnxCircularBufferHead"] = wasmExports["ea"])(a0); +var _SherpaOnnxCircularBufferReset = Module["_SherpaOnnxCircularBufferReset"] = a0 => (_SherpaOnnxCircularBufferReset = Module["_SherpaOnnxCircularBufferReset"] = wasmExports["fa"])(a0); +var _SherpaOnnxCreateVoiceActivityDetector = Module["_SherpaOnnxCreateVoiceActivityDetector"] = (a0, a1) => (_SherpaOnnxCreateVoiceActivityDetector = Module["_SherpaOnnxCreateVoiceActivityDetector"] = wasmExports["ga"])(a0, a1); +var _SherpaOnnxDestroyVoiceActivityDetector = Module["_SherpaOnnxDestroyVoiceActivityDetector"] = a0 => (_SherpaOnnxDestroyVoiceActivityDetector = Module["_SherpaOnnxDestroyVoiceActivityDetector"] = wasmExports["ha"])(a0); +var _SherpaOnnxVoiceActivityDetectorAcceptWaveform = Module["_SherpaOnnxVoiceActivityDetectorAcceptWaveform"] = (a0, a1, a2) => (_SherpaOnnxVoiceActivityDetectorAcceptWaveform = Module["_SherpaOnnxVoiceActivityDetectorAcceptWaveform"] = wasmExports["ia"])(a0, a1, a2); +var _SherpaOnnxVoiceActivityDetectorEmpty = Module["_SherpaOnnxVoiceActivityDetectorEmpty"] = a0 => (_SherpaOnnxVoiceActivityDetectorEmpty = Module["_SherpaOnnxVoiceActivityDetectorEmpty"] = wasmExports["ja"])(a0); +var _SherpaOnnxVoiceActivityDetectorDetected = Module["_SherpaOnnxVoiceActivityDetectorDetected"] = a0 => (_SherpaOnnxVoiceActivityDetectorDetected = Module["_SherpaOnnxVoiceActivityDetectorDetected"] = wasmExports["ka"])(a0); +var _SherpaOnnxVoiceActivityDetectorPop = Module["_SherpaOnnxVoiceActivityDetectorPop"] = a0 => (_SherpaOnnxVoiceActivityDetectorPop = Module["_SherpaOnnxVoiceActivityDetectorPop"] = wasmExports["la"])(a0); +var _SherpaOnnxVoiceActivityDetectorClear = Module["_SherpaOnnxVoiceActivityDetectorClear"] = a0 => (_SherpaOnnxVoiceActivityDetectorClear = Module["_SherpaOnnxVoiceActivityDetectorClear"] = wasmExports["ma"])(a0); +var _SherpaOnnxVoiceActivityDetectorFront = Module["_SherpaOnnxVoiceActivityDetectorFront"] = a0 => (_SherpaOnnxVoiceActivityDetectorFront = Module["_SherpaOnnxVoiceActivityDetectorFront"] = wasmExports["na"])(a0); +var _SherpaOnnxDestroySpeechSegment = Module["_SherpaOnnxDestroySpeechSegment"] = a0 => (_SherpaOnnxDestroySpeechSegment = Module["_SherpaOnnxDestroySpeechSegment"] = wasmExports["oa"])(a0); +var _SherpaOnnxVoiceActivityDetectorReset = Module["_SherpaOnnxVoiceActivityDetectorReset"] = a0 => (_SherpaOnnxVoiceActivityDetectorReset = Module["_SherpaOnnxVoiceActivityDetectorReset"] = wasmExports["pa"])(a0); +var _SherpaOnnxVoiceActivityDetectorFlush = Module["_SherpaOnnxVoiceActivityDetectorFlush"] = a0 => (_SherpaOnnxVoiceActivityDetectorFlush = Module["_SherpaOnnxVoiceActivityDetectorFlush"] = wasmExports["qa"])(a0); +var _SherpaOnnxFileExists = Module["_SherpaOnnxFileExists"] = a0 => (_SherpaOnnxFileExists = Module["_SherpaOnnxFileExists"] = wasmExports["ra"])(a0); +var _malloc = Module["_malloc"] = a0 => (_malloc = Module["_malloc"] = wasmExports["ta"])(a0); +var _free = Module["_free"] = a0 => (_free = Module["_free"] = wasmExports["ua"])(a0); +var _emscripten_builtin_memalign = (a0, a1) => (_emscripten_builtin_memalign = wasmExports["va"])(a0, a1); +var setTempRet0 = a0 => (setTempRet0 = wasmExports["wa"])(a0); +var stackSave = () => (stackSave = wasmExports["xa"])(); +var stackRestore = a0 => (stackRestore = wasmExports["ya"])(a0); +var stackAlloc = a0 => (stackAlloc = wasmExports["za"])(a0); +var ___cxa_is_pointer_type = a0 => (___cxa_is_pointer_type = wasmExports["Aa"])(a0); +Module["addRunDependency"] = addRunDependency; +Module["removeRunDependency"] = removeRunDependency; +Module["FS_createPath"] = FS.createPath; +Module["FS_createLazyFile"] = FS.createLazyFile; +Module["FS_createDevice"] = FS.createDevice; +Module["ccall"] = ccall; +Module["setValue"] = setValue; +Module["getValue"] = getValue; +Module["UTF8ToString"] = UTF8ToString; +Module["stringToUTF8"] = stringToUTF8; +Module["lengthBytesUTF8"] = lengthBytesUTF8; +Module["FS_createPreloadedFile"] = FS.createPreloadedFile; +Module["FS_createDataFile"] = FS.createDataFile; +Module["FS_unlink"] = FS.unlink; +var calledRun; +dependenciesFulfilled = function runCaller() { + if (!calledRun) + run(); + if (!calledRun) + dependenciesFulfilled = runCaller +} +; +function run() { + if (runDependencies > 0) { + return + } + preRun(); + if (runDependencies > 0) { + return + } + function doRun() { + if (calledRun) + return; + calledRun = true; + Module["calledRun"] = true; + if (ABORT) + return; + initRuntime(); + if (Module["onRuntimeInitialized"]) + Module["onRuntimeInitialized"](); + postRun() + } + if (Module["setStatus"]) { + Module["setStatus"]("Running..."); + setTimeout(function() { + setTimeout(function() { + Module["setStatus"]("") + }, 1); + doRun() + }, 1) + } else { + doRun() + } +} +if (Module["preInit"]) { + if (typeof Module["preInit"] == "function") + Module["preInit"] = [Module["preInit"]]; + while (Module["preInit"].length > 0) { + Module["preInit"].pop()() + } +} +run(); diff --git a/public/sherpa.wasm/sherpa-onnx-wasm-main-vad-asr.wasm b/public/sherpa.wasm/sherpa-onnx-wasm-main-vad-asr.wasm new file mode 100644 index 00000000..3e71ee7c Binary files /dev/null and b/public/sherpa.wasm/sherpa-onnx-wasm-main-vad-asr.wasm differ diff --git a/src/App.jsx b/src/App.jsx index 7cd6aae4..836c87c3 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -1,6 +1,7 @@ import React, { useEffect, useRef } from "react"; import { ThemeProvider } from "@mui/material"; import { useNavigate } from "react-router-dom"; +import { BrowserRouter as Router } from "react-router-dom"; import { StyledEngineProvider } from "@mui/material/styles"; import FingerprintJS from "@fingerprintjs/fingerprintjs"; import routes from "./routes"; diff --git a/src/assets/images/boy-running.gif b/src/assets/images/boy-running.gif new file mode 100644 index 00000000..f7d25245 Binary files /dev/null and b/src/assets/images/boy-running.gif differ diff --git a/src/components/Assesment/Assesment.jsx b/src/components/Assesment/Assesment.jsx index 6087c7ac..43575ea6 100644 --- a/src/components/Assesment/Assesment.jsx +++ b/src/components/Assesment/Assesment.jsx @@ -24,12 +24,12 @@ import { setLocalData, } from "../../utils/constants"; import practicebg from "../../assets/images/practice-bg.svg"; -import { useNavigate } from "../../../node_modules/react-router-dom/dist/index"; +import { useNavigate } from "react-router-dom"; import { useEffect, useState } from "react"; import HelpLogo from "../../assets/help.png"; import CloseIcon from "@mui/icons-material/Close"; -import axios from "../../../node_modules/axios/index"; +import axios from "axios"; // import { useDispatch } from 'react-redux'; import { setVirtualId } from "../../store/slices/user.slice"; import { useDispatch, useSelector } from "react-redux"; @@ -58,10 +58,10 @@ import profilePic from "../../assets/images/profile_url.png"; import textureImage from "../../assets/images/textureImage.png"; import back from "../../assets/images/back-arrow.png"; import { jwtDecode } from "jwt-decode"; -import config from "../../utils/urlConstants.json"; import panda from "../../assets/images/panda.svg"; import cryPanda from "../../assets/images/cryPanda.svg"; import { uniqueId } from "../../services/utilService"; +import ProgressOverlay from "../CommonComponent/ProgressOverlay"; import { end } from "../../services/telementryService"; import { levelMapping } from "../../utils/levelData"; import scoreView from "../../assets/images/scoreView.svg"; @@ -71,9 +71,172 @@ import { getFetchMilestoneDetails } from "../../services/learnerAi/learnerAiServ import * as Assets from "../../utils/imageAudioLinks"; const theme = createTheme(); +import { offlineModelsInfo } from "../../utils/constants"; +import ModelLoaderIndicator from "../ModelLoaderIndicator"; -export const LanguageModal = ({ lang, setLang, setOpenLangModal }) => { +export const LanguageModal = ({ + lang, + setLang, + setOpenLangModal, + setLoading, + setDownloadProgress, +}) => { const [selectedLang, setSelectedLang] = useState(lang); + const [isOfflineModel, setIsOfflineModel] = useState( + localStorage.getItem("isOfflineModel") === "true" + ); + + useEffect(() => { + localStorage.setItem("isOfflineModel", isOfflineModel); + }, [isOfflineModel]); + + // const dbName = "language-ai-models"; + // const dbVersion = 1; + // let db; + + // // Open IndexedDB + // const openDB = () => { + // return new Promise((resolve, reject) => { + // const request = window.indexedDB.open(dbName, dbVersion); + // request.onerror = (event) => { + // console.error("IndexedDB error:", event.target.errorCode); + // reject(event.target.error); + // }; + // request.onsuccess = (event) => { + // db = event.target.result; + // console.log("IndexedDB opened successfully"); + // resolve(); + // }; + // request.onupgradeneeded = (event) => { + // db = event.target.result; + // console.log("Creating object store for models"); + // if (!db.objectStoreNames.contains("models")) { + // db.createObjectStore("models"); + // } + // }; + // }); + // }; + + // // Function to store model in IndexedDB + // const storeModel = async (modelName, modelURL, isVocabModel) => { + // try { + // console.log(modelURL); + // const response = await fetch(modelURL); + // if (!response.ok) { + // throw new Error(`HTTP error! Status: ${response.status}`); + // } + + // let modelData + + // if(!isVocabModel){ + + // const reader = response.body.getReader(); + // const contentLength = +response.headers.get("Content-Length"); + // let receivedLength = 0; + // const chunks = []; + + // while (true) { + // const { done, value } = await reader.read(); + // if (done) break; + // chunks.push(value); + // receivedLength += value.length; + + // // Update progress + // const percentage = (receivedLength / contentLength) * 100; + // setDownloadProgress(percentage.toFixed()); + // } + + // modelData = new Uint8Array(receivedLength); + + // let position = 0; + // for (let chunk of chunks) { + // modelData.set(chunk, position); + // position += chunk.length; + // } + + // }else{ + // console.log(response); + // const vocabData = await response.arrayBuffer(); + // const decoder = new TextDecoder("utf-8"); + // modelData = decoder.decode(vocabData).split("\n"); + // } + + // const transaction = db.transaction(["models"], "readwrite"); + // const store = transaction.objectStore("models"); + + // store.put(modelData, modelName); + // console.log(`Stored model ${modelName} in IndexedDB`); + // } catch (error) { + // console.error("Error storing model in IndexedDB:", error); + // } + // }; + + // // Function to check if the model is already stored in IndexedDB + // const isModelStored = (modelName) => { + // return new Promise((resolve, reject) => { + // const transaction = db.transaction(["models"], "readonly"); + // const store = transaction.objectStore("models"); + // const request = store.get(modelName); + + // request.onerror = function (event) { + // console.error( + // "Error checking model in IndexedDB:", + // event.target.errorCode + // ); + // reject(event.target.error); + // }; + + // request.onsuccess = function (event) { + // resolve(!!event.target.result); + // }; + // }); + // }; + + // // Function to load model + // const loadModel = async (selectedLang) => { + // setLoading(true); + // try { + // await openDB(); + // let modelName = ""; + // let modelURL = ""; + // let vacabFileName = ""; + // let vocabURL = ""; + + // offlineModelsInfo.map((modelInfoElement) => { + // if (modelInfoElement.lang === selectedLang) { + // modelName = modelInfoElement.modelName; + // modelURL = modelInfoElement.modelURL; + // vocabURL = modelInfoElement?.vocabUrl; + // vacabFileName = modelInfoElement?.vacabFileName; + // } + // }); + + // const stored = await isModelStored(modelName); + + // if(vocabURL){ + // const vocabStored = await isModelStored(vacabFileName); + // if (!stored) { + // await storeModel(vacabFileName, vocabURL, true); + // } else { + // console.log(`Model ${vacabFileName} is already stored in IndexedDB`); + // return; + // } + // } + + // if (!stored) { + // await storeModel(modelName, modelURL,false); + // } else { + // console.log(`Model ${modelName} is already stored in IndexedDB`); + // return; + // } + + // } catch (error) { + // console.log(error.message); + // } finally { + // setLoading(false); + // } + // }; + return ( { - {languages.map((elem) => { - const isSelectedLang = elem.lang === selectedLang; + {languages?.map((elem, index) => { + const isSelectedLang = + isOfflineModel === elem.offline && elem.lang === selectedLang; return ( setSelectedLang(elem.lang)} + onClick={() => { + setSelectedLang(elem.lang); + setIsOfflineModel(elem.offline); + }} sx={{ cursor: "pointer", mt: "34px", @@ -206,9 +373,14 @@ export const LanguageModal = ({ lang, setLang, setOpenLangModal }) => { // mr="110px" > { + onClick={async () => { setLang(selectedLang); setOpenLangModal(false); + if (isOfflineModel && selectedLang !== "en") { + loadModel(selectedLang); + } else { + await window.sherpaModule.loadModel(); + } }} sx={{ cursor: "pointer", @@ -374,6 +546,7 @@ export const ProfileHeader = ({ lang, profileName, points = 0, + loading, handleBack, }) => { const language = lang || getLocalData("lang"); @@ -400,10 +573,19 @@ export const ProfileHeader = ({ } }; + const isOfflineModel = localStorage.getItem("isOfflineModel") === "true"; + + const selectedLanguage = languages?.find( + (elem) => elem.lang === language && elem.offline === isOfflineModel + ); + + const displayLanguage = selectedLanguage?.name || "Select Language"; + const handleLogout = () => { localStorage.clear(); + sessionStorage.clear(); end({}); - navigate("/login"); + window.location.href = "/login"; }; const CustomIconButton = styled(IconButton)({ @@ -450,7 +632,7 @@ export const ProfileHeader = ({ top: 0, left: 0, width: "100%", - height: { xs: "60px", sm: "70px" }, + height: { xs: "60px", sm: "50px" }, background: "rgba(255, 255, 255, 0.2)", backdropFilter: "blur(3px)", display: "flex", @@ -544,55 +726,66 @@ export const ProfileHeader = ({ )} - - - setOpenLangModal - ? setOpenLangModal(true) - : setOpenMessageDialog({ - message: "go to homescreen to change language", - dontShowHeader: true, - }) - } - > - - - + {/* */} + + {isOfflineModel && } + + + setOpenLangModal + ? setOpenLangModal(!loading) + : setOpenMessageDialog({ + message: "go to homescreen to change language", + dontShowHeader: true, + }) + } + > + + + + - - {isMobile - ? "Language" - : languages?.find((elem) => elem.lang === language)?.name || - "Select Language"} - - + {isMobile + ? "Language" + : languages?.find((elem) => elem.lang === language)?.name || + "Select Language"} + - {import.meta.env.VITE_IS_IN_APP_AUTHORISATION === "true" && ( - - - - Logout - - - - )} + {import.meta.env.VITE_IS_IN_APP_AUTHORISATION === "true" && ( + + + + Logout + + + + )} ); @@ -608,6 +801,7 @@ const Assesment = ({ discoverStart }) => { } // const [searchParams, setSearchParams] = useSearchParams(); // const [profileName, setProfileName] = useState(username); + const [loading, setLoading] = useState(false); const [openMessageDialog, setOpenMessageDialog] = useState(""); // let lang = searchParams.get("lang") || "ta"; const [level, setLevel] = useState(""); @@ -616,6 +810,7 @@ const Assesment = ({ discoverStart }) => { const [lang, setLang] = useState(getLocalData("lang") || "en"); const [points, setPoints] = useState(0); const isMobile = useMediaQuery(theme.breakpoints.down("sm")); + const [downloadProgress, setDownloadProgress] = useState(0); useEffect(() => { setLocalData("lang", lang); @@ -781,7 +976,216 @@ const Assesment = ({ discoverStart }) => { }; const navigate = useNavigate(); - const handleRedirect = () => { + + const dbName = "language-ai-models"; + const dbVersion = 1; + let db; + + // Function to check if the model is already stored in IndexedDB + const isModelStored = async (modelName) => { + return new Promise((resolve, reject) => { + const transaction = db.transaction(["models"], "readonly"); + const store = transaction.objectStore("models"); + const request = store.get(modelName); + + request.onerror = function (event) { + console.error( + "Error checking model in IndexedDB:", + event.target.errorCode + ); + reject(event.target.error); + }; + + request.onsuccess = function (event) { + resolve(!!event.target.result); + }; + }); + }; + + const loadModelIndic = async (modelName) => { + try { + let transaction; + let store; + let request; + try { + transaction = await db.transaction(["models"], "readonly"); + store = transaction.objectStore("models"); + request = await store.get(modelName); + } catch (error) { + console.error("Error accessing IndexedDB:", error); + return; + } + + request.onsuccess = async () => { + const modelData = request.result; + if (window.offlineSession === undefined) { + window.offlineSession = await window.ort.InferenceSession.create( + modelData + ); + console.log(window.offlineSession); + } + }; + + request.onerror = (err) => { + console.error(`Error to get model data: ${err}`); + }; + + console.log(`Created model session`); + } catch (error) { + console.error("Error storing model in IndexedDB:", error); + } + }; + + const loadVocabIndic = async (vocabFileName) => { + try { + let transaction; + let store; + let request; + try { + transaction = await db.transaction(["models"], "readonly"); + store = transaction.objectStore("models"); + request = await store.get(vocabFileName); + } catch (error) { + console.error("Error accessing IndexedDB:", error); + return; + } + + request.onsuccess = async () => { + window.offlineVocab = request.result; + }; + + request.onerror = (err) => { + console.error(`Error to get model data: ${err}`); + }; + + console.log(`Created model session`); + } catch (error) { + console.error("Error storing model in IndexedDB:", error); + } + }; + + // Function to store model in IndexedDB + const storeModel = async (modelName, modelURL, isVocabModel) => { + try { + console.log(modelURL); + const response = await fetch(modelURL); + if (!response.ok) { + throw new Error(`HTTP error! Status: ${response.status}`); + } + + let modelData; + + if (!isVocabModel) { + const reader = response.body.getReader(); + const contentLength = +response.headers.get("Content-Length"); + let receivedLength = 0; + const chunks = []; + + while (true) { + const { done, value } = await reader.read(); + if (done) break; + chunks.push(value); + receivedLength += value.length; + + // Update progress + const percentage = (receivedLength / contentLength) * 100; + setDownloadProgress(percentage.toFixed()); + } + + modelData = new Uint8Array(receivedLength); + + let position = 0; + for (let chunk of chunks) { + modelData.set(chunk, position); + position += chunk.length; + } + } else { + console.log(response); + const vocabData = await response.arrayBuffer(); + const decoder = new TextDecoder("utf-8"); + modelData = decoder.decode(vocabData).split("\n"); + } + + const transaction = db.transaction(["models"], "readwrite"); + const store = transaction.objectStore("models"); + + store.put(modelData, modelName); + console.log(`Stored model ${modelName} in IndexedDB`); + } catch (error) { + console.error("Error storing model in IndexedDB:", error); + } + }; + + // Function to load model + const loadModel = async (lang) => { + setLoading(true); + try { + await openDB(); + let modelName = ""; + let modelURL = ""; + let vacabFileName = ""; + let vocabURL = ""; + + offlineModelsInfo.map((modelInfoElement) => { + if (modelInfoElement.lang === lang) { + modelName = modelInfoElement.modelName; + modelURL = modelInfoElement.modelURL; + vocabURL = modelInfoElement?.vocabUrl; + vacabFileName = modelInfoElement?.vacabFileName; + } + }); + + const stored = await isModelStored(modelName); + + if (!stored) { + await storeModel(modelName, modelURL, false); + } else { + window.dispatchEvent(new Event("modelLoaded")); + console.log(`Model ${modelName} is already stored in IndexedDB`); + return; + } + + if (vocabURL) { + const vocabStored = await isModelStored(vacabFileName); + if (!stored) { + await storeModel(vacabFileName, vocabURL, true); + } else { + console.log(`Model ${vacabFileName} is already stored in IndexedDB`); + return; + } + } + } catch (error) { + console.log(error.message); + } finally { + setLoading(false); + } + }; + + // Open IndexedDB + + const openDB = () => { + return new Promise((resolve, reject) => { + const request = window.indexedDB.open(dbName, dbVersion); + request.onerror = (event) => { + console.error("IndexedDB error:", event.target.errorCode); + reject(event.target.error); + }; + request.onsuccess = (event) => { + db = event.target.result; + console.log("IndexedDB opened successfully"); + resolve(); + }; + request.onupgradeneeded = (event) => { + db = event.target.result; + console.log("Creating object store for models"); + if (!db.objectStoreNames.contains("models")) { + db.createObjectStore("models"); + } + }; + }); + }; + + const handleRedirect = async (lang) => { const profileName = getLocalData("profileName"); if (!username && !profileName && !TOKEN && level === 0) { // alert("please add username in query param"); @@ -796,8 +1200,98 @@ const Assesment = ({ discoverStart }) => { } else { navigate("/practice"); } + if (localStorage.getItem("isOfflineModel") === "true") { + let modelName = ""; + let vacabFileName = ""; + + offlineModelsInfo.map((modelInfoElement) => { + if (modelInfoElement.lang === lang) { + modelName = modelInfoElement.modelName; + vacabFileName = modelInfoElement?.vacabFileName; + } + }); + + await openDB(); + const stored = await isModelStored(modelName); + if (stored) { + window.dispatchEvent(new Event("modelLoaded")); + console.log(`Model ${modelName} is already stored in IndexedDB`); + } else { + alert(`you have to download en-offline model`); + if (lang != "en") { + await loadModel(lang); + } else { + window.sherpaModule.loadModel(); + } + return; + } + if (lang !== "en") { + await loadModelIndic(modelName); + await loadVocabIndic(vacabFileName); + } else { + if (!window.sherpaRecognizer) { + await window.sherpaModule.loadModel(); + await fileExists("transducer-encoder.onnx"); + let config = { + modelConfig: { + debug: 1, + tokens: "./tokens.txt", + }, + }; + config.modelConfig.transducer = { + encoder: "./transducer-encoder.onnx", + decoder: "./transducer-decoder.onnx", + joiner: "./transducer-joiner.onnx", + }; + config.modelConfig.modelType = "transducer"; + let recognizer = new window.OfflineRecognizer( + config, + window.sherpaModule + ); + window.sherpaRecognizer = recognizer; + console.log("recognizer is created!", recognizer); + + if (import.meta.env.VITE_APP_SHERPA_VAD_ENABLED === "true") { + let vad = window.createVad(window.sherpaModule); + window.vad = vad; + console.log("vad is created!", vad); + + let buffer = new CircularBuffer(30 * 16000, window.sherpaModule); + window.wasmBuffer = buffer; + console.log("CircularBuffer is created!", buffer); + } + + function fileExists(filename) { + let buffer = null; + try { + const filenameLen = Module.lengthBytesUTF8(filename) + 1; + const buffer = Module._malloc(filenameLen); + if (!buffer) { + throw new Error("Failed to allocate memory"); + } + Module.stringToUTF8(filename, buffer, filenameLen); + + let exists = Module._SherpaOnnxFileExists(buffer); + + Module._free(buffer); + + return exists; + } catch (error) { + console.error("Error checking file existence:", error); + return false; + } finally { + if (buffer) { + Module._free(buffer); + } + } + } + } + } + } }; + window.handleRedirect = handleRedirect; + const images = { desktopLevel1, desktopLevel2, @@ -845,6 +1339,14 @@ const Assesment = ({ discoverStart }) => { return ( <> + {loading && ( + + )} {!!openMessageDialog && ( { /> )} {openLangModal && ( - + )} {level > 0 ? ( {import.meta.env.VITE_SHOW_HELP_VIDEO === "true" && ( @@ -904,7 +1421,9 @@ const Assesment = ({ discoverStart }) => { cursor: "pointer", boxShadow: `3px 3px 10px ${levelConfig[level].color}80`, }} - onClick={handleRedirect} + onClick={async () => { + await handleRedirect(lang); + }} > { mt: { xs: 1, md: 2 }, zIndex: 9999, }} - onClick={handleRedirect} + onClick={async () => { + await handleRedirect(lang); + }} > diff --git a/src/components/AssesmentEnd/AssesmentEnd.jsx b/src/components/AssesmentEnd/AssesmentEnd.jsx index df5e52fc..a211c73a 100644 --- a/src/components/AssesmentEnd/AssesmentEnd.jsx +++ b/src/components/AssesmentEnd/AssesmentEnd.jsx @@ -9,7 +9,7 @@ import { setLocalData, } from "../../utils/constants"; import homeBackground from "../../assets/images/homeBackground.png"; -import { Typography } from "../../../node_modules/@mui/material/index"; +import { Typography } from "@mui/material"; import { useNavigate } from "react-router-dom"; import axios from "axios"; import { useEffect, useState } from "react"; diff --git a/src/components/CommonComponent/CircularProgressOverlay.jsx b/src/components/CommonComponent/CircularProgressOverlay.jsx new file mode 100644 index 00000000..c24691f1 --- /dev/null +++ b/src/components/CommonComponent/CircularProgressOverlay.jsx @@ -0,0 +1,21 @@ +import React from "react"; +import { Box, CircularProgress } from "@mui/material"; + +const CircularProgressOverlay = ({ size, color }) => ( + + + +); + +export default CircularProgressOverlay; diff --git a/src/components/CommonComponent/ProgressOverlay.jsx b/src/components/CommonComponent/ProgressOverlay.jsx new file mode 100644 index 00000000..c1828f7c --- /dev/null +++ b/src/components/CommonComponent/ProgressOverlay.jsx @@ -0,0 +1,88 @@ +import React from "react"; +import { + Box, + CircularProgress, + LinearProgress, + Typography, +} from "@mui/material"; +import RunnungBoy from "../../assets/images/boy-running.gif"; + +const ProgressOverlay = ({ + size, + color = "#ffffff", + showLinearProgress = false, + downloadProgress = 0, +}) => ( + + {showLinearProgress ? ( + + + + + + + + LOADING… {`${Math.round(Number(downloadProgress))}%`} + + + + ) : ( + + )} + +); + +export default ProgressOverlay; diff --git a/src/components/DiscoverSentance/DiscoverSentance.jsx b/src/components/DiscoverSentance/DiscoverSentance.jsx index 9fb295a3..e2dcd5d9 100644 --- a/src/components/DiscoverSentance/DiscoverSentance.jsx +++ b/src/components/DiscoverSentance/DiscoverSentance.jsx @@ -1,6 +1,6 @@ import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; -import axios from "../../../node_modules/axios/index"; +import axios from "axios"; import elephant from "../../assets/images/elephant.svg"; import { callConfetti, diff --git a/src/components/DownloadProgressModal.jsx b/src/components/DownloadProgressModal.jsx new file mode 100644 index 00000000..2ba498a2 --- /dev/null +++ b/src/components/DownloadProgressModal.jsx @@ -0,0 +1,34 @@ +import React from "react"; +import { Box, Typography, LinearProgress, Modal } from "@mui/material"; + +const DownloadProgressModal = ({ open, progress }) => { + return ( + + + + Downloading Model... + + + {progress}% downloaded + + + ); +}; + +export default DownloadProgressModal; diff --git a/src/components/Layouts.jsx/MainLayout.jsx b/src/components/Layouts.jsx/MainLayout.jsx index c3625748..da0d1505 100644 --- a/src/components/Layouts.jsx/MainLayout.jsx +++ b/src/components/Layouts.jsx/MainLayout.jsx @@ -67,6 +67,8 @@ import zIndex from "@mui/material/styles/zIndex"; const theme = createTheme(); +import DownloadProgressModal from "../DownloadProgressModal"; + const MainLayout = (props) => { const isMobile = useMediaQuery(theme.breakpoints.down("sm")); const isTablet = useMediaQuery(theme.breakpoints.between("sm", "md")); @@ -235,6 +237,20 @@ const MainLayout = (props) => { setLocalData("rFlow", false); } }, [language]); + // Offline + const [downloadProgress, setDownloadProgress] = useState(0); + + useEffect(() => { + // Make sure to clean up the global callback when the component unmounts. + window.onDownloadProgress = (progress) => { + setDownloadProgress(progress); + }; + return () => { + window.onDownloadProgress = null; + }; + }, []); + + //console.log('Main Layout Array', storedData, pageName); const handleAudioPlay = (index) => { const audioElem = audioRefs.current[index]; @@ -398,6 +414,8 @@ const MainLayout = (props) => { )} + + {loading ? ( { const audioRefs = createRef(null); const [audioInstance, setAudioInstance] = useState(null); @@ -1050,7 +1052,9 @@ const WordsOrImage = ({ mt: isMobile ? 2 : 0, }} > - {language === "en" && (level === 1 || level === 2 || level === 3) && !isShowCase ? ( + {language === "en" && + (level === 1 || level === 2 || level === 3) && + !isShowCase ? (
{showSpeakButton && ( ) : ( ({ + width: "10px", + height: "10px", + borderRadius: "50%", + backgroundColor: + status === "loading" ? "red" : status === "loaded" ? "green" : "#bbb", + margin: "3px", + transition: "background-color 0.5s ease", + boxShadow: status === "loading" ? "0 0 10px red" : "none", +})); + +const ModelLoaderIndicator = () => { + const [progress, setProgress] = useState(0); + const [loading, setLoading] = useState(false); + const [modelLoaded, setModelLoaded] = useState(window.modelLoaded); + + // Listen for custom events. + useEffect(() => { + const handleLoading = () => { + console.log("Event: loadingModel received"); + setLoading(true); + setModelLoaded(false); + setProgress(0); + }; + + const handleProgress = (e) => { + console.log( + "Event: modelProgress received with progress:", + e.detail.progress + ); + setProgress(e.detail.progress); + }; + + const handleLoaded = () => { + console.log("Event: modelLoaded received"); + setModelLoaded(true); + setLoading(false); + }; + + window.addEventListener("loadingModel", handleLoading); + window.addEventListener("modelProgress", handleProgress); + window.addEventListener("modelLoaded", handleLoaded); + + return () => { + window.removeEventListener("loadingModel", handleLoading); + window.removeEventListener("modelProgress", handleProgress); + window.removeEventListener("modelLoaded", handleLoaded); + }; + }, []); + + // Determine current status for the bulb. + const status = modelLoaded ? "loaded" : loading ? "loading" : "idle"; + + return ( + <> + {/* For testing, a button to simulate model load */} + {/* */} + {!modelLoaded && loading && ( + <> + + + Offline Model is loading... {progress}% + + + + + + )} + {modelLoaded && ( + <> + + + Offline Model Activated! + + + )} + + ); +}; + +export default ModelLoaderIndicator; diff --git a/src/components/OfflineModelManager.js b/src/components/OfflineModelManager.js new file mode 100644 index 00000000..8d3dfa0e --- /dev/null +++ b/src/components/OfflineModelManager.js @@ -0,0 +1,256 @@ +import { offlineModelsInfo, getLocalData } from "../utils/constants"; + +const dbName = "language-ai-models"; +const dbVersion = 1; +let db; + +export const openDB = () => { + return new Promise((resolve, reject) => { + const request = window.indexedDB.open(dbName, dbVersion); + request.onerror = (event) => { + console.error("IndexedDB error:", event.target.errorCode); + reject(event.target.error); + }; + request.onsuccess = (event) => { + db = event.target.result; + console.log("IndexedDB opened successfully"); + resolve(); + }; + request.onupgradeneeded = (event) => { + db = event.target.result; + console.log("Creating object store for models"); + if (!db.objectStoreNames.contains("models")) { + db.createObjectStore("models"); + } + }; + }); +}; + +export const storeModel = async ( + modelName, + modelURL, + setDownloadProgress, + isVocabModel +) => { + try { + console.log("Fetching:", modelURL); + const response = await fetch(modelURL); + if (!response.ok) { + throw new Error(`HTTP error! Status: ${response.status}`); + } + + let modelData; + if (!isVocabModel) { + const reader = response.body.getReader(); + const contentLength = +response.headers.get("Content-Length"); + let receivedLength = 0; + const chunks = []; + + while (true) { + const { done, value } = await reader.read(); + if (done) break; + chunks.push(value); + receivedLength += value.length; + // Update progress if provided + if (setDownloadProgress) { + const percentage = (receivedLength / contentLength) * 100; + setDownloadProgress(percentage.toFixed()); + } + } + + modelData = new Uint8Array(receivedLength); + let position = 0; + for (let chunk of chunks) { + modelData.set(chunk, position); + position += chunk.length; + } + } else { + const vocabData = await response.arrayBuffer(); + const decoder = new TextDecoder("utf-8"); + modelData = decoder.decode(vocabData).split("\n"); + } + + const transaction = db.transaction(["models"], "readwrite"); + const store = transaction.objectStore("models"); + store.put(modelData, modelName); + console.log(`Stored model ${modelName} in IndexedDB`); + } catch (error) { + console.error("Error storing model in IndexedDB:", error); + } +}; + +export const isModelStored = (modelName) => { + return new Promise((resolve, reject) => { + const transaction = db.transaction(["models"], "readonly"); + const store = transaction.objectStore("models"); + const request = store.get(modelName); + + request.onerror = (event) => { + console.error( + "Error checking model in IndexedDB:", + event.target.errorCode + ); + reject(event.target.error); + }; + + request.onsuccess = (event) => { + resolve(!!event.target.result); + }; + }); +}; + +export const loadOfflineModel = async (selectedLang, setDownloadProgress) => { + try { + await openDB(); + let modelName = ""; + let modelURL = ""; + let vocabURL = ""; + let vocabFileName = ""; + + offlineModelsInfo.forEach((modelInfo) => { + if (modelInfo.lang === selectedLang) { + modelName = modelInfo.modelName; + modelURL = modelInfo.modelURL; + vocabURL = modelInfo.vocabUrl; + vocabFileName = modelInfo.vacabFileName; + } + }); + + // Check and store the vocabulary model if available + if (vocabURL) { + const vocabStored = await isModelStored(vocabFileName); + if (!vocabStored) { + await storeModel(vocabFileName, vocabURL, setDownloadProgress, true); + } else { + console.log(`Vocabulary model ${vocabFileName} is already stored`); + } + } + + // Check and store the main model + const stored = await isModelStored(modelName); + if (!stored) { + await storeModel(modelName, modelURL, setDownloadProgress, false); + } else { + console.log(`Model ${modelName} is already stored in IndexedDB`); + } + } catch (error) { + console.error(error.message); + } +}; + +export const loadOfflineModelSession = async (modelName) => { + try { + const transaction = db.transaction(["models"], "readonly"); + const store = transaction.objectStore("models"); + const request = store.get(modelName); + + request.onsuccess = async () => { + const modelData = request.result; + if (window.offlineSession === undefined) { + window.offlineSession = await window.ort.InferenceSession.create( + modelData + ); + console.log("Offline model session created:", window.offlineSession); + } + }; + + request.onerror = (err) => { + console.error(`Error getting model data: ${err}`); + }; + } catch (error) { + console.error("Error loading offline model session:", error); + } +}; + +export const loadOfflineVocab = async (vocabFileName) => { + try { + const transaction = db.transaction(["models"], "readonly"); + const store = transaction.objectStore("models"); + const request = store.get(vocabFileName); + + request.onsuccess = async () => { + window.offlineVocab = request.result; + console.log("Offline vocab loaded."); + }; + + request.onerror = (err) => { + console.error(`Error getting vocab data: ${err}`); + }; + } catch (error) { + console.error("Error loading offline vocab:", error); + } +}; + +/** + * Updated handleRedirect: + * - Instead of blocking redirection until the model loads, we kick off the model loading in the background. + * - The progress callback (setDownloadProgress) will update the UI as the model downloads. + * - The redirect callback is called immediately. + */ +export const handleRedirect = async (lang, callback, setDownloadProgress) => { + if (localStorage.getItem("isOfflineModel") === "true") { + let modelName = ""; + let vacabFileName = ""; + + offlineModelsInfo.forEach((modelInfoElement) => { + if (modelInfoElement.lang === lang) { + modelName = modelInfoElement.modelName; + vacabFileName = modelInfoElement?.vacabFileName; + } + }); + + await openDB(); + isModelStored(modelName) + .then((stored) => { + if (!stored) { + console.log( + `Model ${modelName} is not stored, starting download in background.` + ); + // Kick off offline model loading (which shows progress) without awaiting it. + loadOfflineModel(lang, setDownloadProgress).catch(console.error); + } else { + console.log(`Model ${modelName} is already stored in IndexedDB.`); + } + }) + .catch(console.error); + + // For non-English languages, kick off additional background tasks. + if (lang !== "en") { + // loadModelIndic and loadVocabIndic should be defined elsewhere. + loadModelIndic(modelName).catch(console.error); + loadVocabIndic(vacabFileName).catch(console.error); + } else { + if (!window.sherpaRecognizer) { + window.sherpaModule.loadModel().catch(console.error); + // Other operations for the English model can run in the background. + fileExists("transducer-encoder.onnx"); + // Additional configuration and recognizer setup... + } + } + + // Immediately trigger the redirect callback without waiting for model loading to finish. + callback && callback(); + } +}; + +function fileExists(filename) { + let buffer = null; + try { + const filenameLen = Module.lengthBytesUTF8(filename) + 1; + buffer = Module._malloc(filenameLen); + if (!buffer) { + throw new Error("Failed to allocate memory"); + } + Module.stringToUTF8(filename, buffer, filenameLen); + let exists = Module._SherpaOnnxFileExists(buffer); + Module._free(buffer); + return exists; + } catch (error) { + console.error("Error checking file existence:", error); + return false; + } finally { + if (buffer) { + Module._free(buffer); + } + } +} diff --git a/src/csp.js b/src/csp.js index ab5c4ca0..10ba352e 100644 --- a/src/csp.js +++ b/src/csp.js @@ -15,7 +15,7 @@ export const getCSP = (envVariables) => { font-src 'self' https://fonts.gstatic.com https://fonts.cdnfonts.com; img-src 'self' data: https://raw.githubusercontent.com https://cdn.jsdelivr.net https://images.squarespace-cdn.com ${VITE_AWS_S3_BUCKET_CONTENT_URL} ${VITE_AWS_S3_BUCKET_URL}; media-src 'self' blob: ${VITE_AWS_S3_BUCKET_URL} ${VITE_AWS_S3_BUCKET_CONTENT_URL} https://raw.githubusercontent.com ; - connect-src 'self' ${VITE_HOST} ${VITE_LEARNER_AI_BASE_URL} blob:; + connect-src 'self' https://unpkg.com ${VITE_HOST} ${VITE_LEARNER_AI_BASE_URL} blob:; form-action 'self'; frame-src 'self' https://www.google.com https://www.gstatic.com; object-src 'none'; diff --git a/src/routes/index.js b/src/routes/index.js index 3cd6064f..63da982e 100644 --- a/src/routes/index.js +++ b/src/routes/index.js @@ -47,7 +47,6 @@ const routData = [ component: reviews.AssesmentEnd, requiresAuth: true, }, - { id: "route-008", path: "/level-page", diff --git a/src/services/telementryService.js b/src/services/telementryService.js index 14c70cc0..24956234 100644 --- a/src/services/telementryService.js +++ b/src/services/telementryService.js @@ -244,7 +244,7 @@ export const getEventOptions = () => { if (localStorage.getItem("token") !== null) { let jwtToken = localStorage.getItem("token"); - console.log("newToken", jwtToken); + //console.log("newToken", jwtToken); //var userDetails = jwtDecode(jwtToken); //emis_username = userDetails.emis_username; diff --git a/src/utils/AudioCompare.jsx b/src/utils/AudioCompare.jsx index 251b25d1..7ba54116 100644 --- a/src/utils/AudioCompare.jsx +++ b/src/utils/AudioCompare.jsx @@ -77,8 +77,6 @@ const AudioRecorder = (props) => { } setIsRecording(false); props.setEnableNext?.(true); - - props.handleStopRecording?.(); }); } }, 500); @@ -88,7 +86,11 @@ const AudioRecorder = (props) => { const saveBlob = (blob) => { const url = window.URL.createObjectURL(blob); - props?.setRecordedAudio(url); + if (localStorage.getItem("isOfflineModel") === "true") { + props?.handleProcess(url); + } else { + props?.setRecordedAudio(url); + } }; const getPulseAnimationStyle = (color) => ({ diff --git a/src/utils/Loader.js b/src/utils/Loader.js deleted file mode 100644 index 9d9f290a..00000000 --- a/src/utils/Loader.js +++ /dev/null @@ -1,17 +0,0 @@ -import React from 'react'; -import './Loader.css'; - -function Loader() { - return ( -
-
- - - - -
-
- ); -} - -export default Loader; diff --git a/src/utils/Loader.jsx b/src/utils/Loader.jsx new file mode 100644 index 00000000..85f06f13 --- /dev/null +++ b/src/utils/Loader.jsx @@ -0,0 +1,17 @@ +import React from "react"; +import "./Loader.css"; + +function Loader() { + return ( +
+
+ + + + +
+
+ ); +} + +export default Loader; diff --git a/src/utils/VoiceAnalyser.jsx b/src/utils/VoiceAnalyser.jsx index 1d0c3041..05722832 100644 --- a/src/utils/VoiceAnalyser.jsx +++ b/src/utils/VoiceAnalyser.jsx @@ -1,7 +1,7 @@ -import { useEffect, useState } from "react"; +import React, { useEffect, useState } from "react"; import { Box, CircularProgress } from "@mui/material"; import axios from "axios"; -import { calcCER } from "character-error-rate"; +import calcCER from "character-error-rate"; import s1 from "../assets/audio/S1.m4a"; import s2 from "../assets/audio/S2.m4a"; import s3 from "../assets/audio/S3.m4a"; @@ -28,13 +28,23 @@ import { getLocalData, replaceAll, NextButtonRound, + rnnoiseModelPath, } from "./constants"; import config from "./urlConstants.json"; import { filterBadWords } from "./Badwords"; -import S3Client from "../config/awsS3"; +import { fetchFile } from "@ffmpeg/ffmpeg"; +import useFFmpeg from "./useFFmpeg"; +import * as fuzz from "fuzzball"; import { PutObjectCommand } from "@aws-sdk/client-s3"; +import S3Client from "../config/awsS3"; +import * as wasm from "indicasr-wasm"; +import { ConstructionOutlined } from "@mui/icons-material"; +import { set } from "lodash"; +import { useNavigate } from "react-router-dom"; +import { original } from "@reduxjs/toolkit"; import usePreloadAudio from "../hooks/usePreloadAudio"; import { updateLearnerProfile } from "../services/learnerAi/learnerAiService"; + /* eslint-disable */ const AudioPath = { @@ -58,12 +68,14 @@ const AudioPath = { 5: s6, }, }; + const currentIndex = localStorage.getItem("index") || 1; function VoiceAnalyser(props) { const [loadCnt, setLoadCnt] = useState(0); const [loader, setLoader] = useState(false); const [pauseAudio, setPauseAudio] = useState(false); const [recordedAudio, setRecordedAudio] = useState(""); + const [recordedPauseCount, setRecordedPauseCount] = useState(0); const [recordedAudioBase64, setRecordedAudioBase64] = useState(""); const [enableAfterLoad, setEnableAfterLoad] = useState(false); const [audioPermission, setAudioPermission] = useState(null); @@ -75,12 +87,15 @@ function VoiceAnalyser(props) { const { callUpdateLearner } = props; const lang = getLocalData("lang"); const { livesData, setLivesData } = props; + const navigate = useNavigate(); const [isAudioPreprocessing, setIsAudioPreprocessing] = useState( import.meta.env.VITE_IS_AUDIOPREPROCESSING === "true" ); const [isMatching, setIsMatching] = useState(false); - const livesAddAudio = usePreloadAudio(livesAdd); - const livesCutAudio = usePreloadAudio(livesCut); + const livesAddAudioPreloaded = usePreloadAudio(livesAdd); + const livesCutAudioPreloaded = usePreloadAudio(livesCut); + + const [recordedBlob, setRecordedBlob] = useState(null); //console.log('audio', recordedAudio, isMatching); @@ -90,6 +105,375 @@ function VoiceAnalyser(props) { } }, [props.enableNext]); + const [nonDenoisedText, setNonDenoisedText] = useState(""); + const [nonDenoisedTextTokens, setNonDenoisedTextTokens] = useState([]); + const [denoisedTextTokens, setDenoisedTextTokens] = useState([]); + const [denoisedText, setDenoisedText] = useState(""); + + const { ffmpeg, loading } = useFFmpeg(); + + const handleProcess = async (recordedBlob) => { + if (!window.sherpaRecognizer) { + // alert("Offline model not loaded, please logout and relogin to load the model"); + // navigate("/login"); + } + setRecordedBlob(recordedBlob); + try { + let nondenoisedBlob; + let nonDenoisedRes; + let newDenoisedUrl; + + if (props.offilnePractice) { + try { + if (lang === "en") { + await ffmpeg.FS( + "writeFile", + "recorded.webm", + await fetchFile(recordedBlob) + ); + + let nondenoiseddata; + try { + nondenoiseddata = ffmpeg.FS("readFile", "recorded.webm"); + } catch (error) { + console.error("Error reading recorded file:", error); + return; + } + nondenoisedBlob = new Blob([nondenoiseddata.buffer], { + type: "audio/webm", + }); + + nonDenoisedRes = await getResponseText(nondenoisedBlob); + } else { + const transcodedArrayBuffer = await transcodeFile( + recordedBlob, + "webm", + false + ); + + const byteArray = new Uint8Array(transcodedArrayBuffer); + const processed_data = wasm.run_preprocessor(byteArray); + const logits = await runModel(processed_data); + let vocab = window.offlineVocab; + let topK = 2; + const batch_size = 1; + const vocab_size = vocab.length - 1; + const time_steps = logits.length / (vocab_size * batch_size); + const offset = Number(vocab[0]); + const actual_vocab_size = Number(vocab[1]); + + let output; + if (topK > 1) { + output = wasm.decode_logprobs_topk( + logits, + new Uint32Array([batch_size, time_steps, vocab_size]), + vocab.slice(2), + offset, + actual_vocab_size, + topK + ); + } else { + output = wasm.decode_logprobs( + logits, + new Uint32Array([batch_size, time_steps, vocab_size]), + vocab.slice(2), + offset, + actual_vocab_size + ); + } + + console.log(output); + nonDenoisedRes = output[0]?.text || ""; + setNonDenoisedTextTokens([...nonDenoisedTextTokens, output]); + } + + nonDenoisedRes = await filterBadWords(nonDenoisedRes); + setNonDenoisedText(nonDenoisedRes); + } catch (error) { + console.error("Error getting non denoised text:", error); + } + } + + let denoisedRes; + + if (props.offilnePractice) { + try { + await ffmpeg.FS( + "writeFile", + "cb.rnnn", + await fetchFile(rnnoiseModelPath) + ); + + await ffmpeg.run( + "-i", + "recorded.webm", + "-af", + "arnndn=m=cb.rnnn", + "output.wav" + ); + + let data; + try { + data = ffmpeg.FS("readFile", "output.wav"); + } catch (error) { + console.error("Error reading output file:", error); + return; + } + const denoisedBlob = new Blob([data.buffer], { type: "audio/wav" }); + newDenoisedUrl = URL.createObjectURL(denoisedBlob); + + if (props.offilnePractice && lang !== "en") { + const transcodedArrayBuffer = await transcodeFile( + recordedBlob, + "webm", + true + ); + + const byteArray = new Uint8Array(transcodedArrayBuffer); + const processed_data = wasm.run_preprocessor(byteArray); + const logits = await runModel(processed_data); + let vocab = window.offlineVocab; + let topK = 2; + const batch_size = 1; + const vocab_size = vocab.length - 1; + const time_steps = logits.length / (vocab_size * batch_size); + const offset = Number(vocab[0]); + const actual_vocab_size = Number(vocab[1]); + + let output; + if (topK > 1) { + output = wasm.decode_logprobs_topk( + logits, + new Uint32Array([batch_size, time_steps, vocab_size]), + vocab.slice(2), + offset, + actual_vocab_size, + topK + ); + } else { + output = wasm.decode_logprobs( + logits, + new Uint32Array([batch_size, time_steps, vocab_size]), + vocab.slice(2), + offset, + actual_vocab_size + ); + } + + denoisedRes = output[0].text; + setDenoisedTextTokens([...denoisedTextTokens, output]); + } else { + denoisedRes = await getResponseText(denoisedBlob); + } + + denoisedRes = await filterBadWords(denoisedRes); + setDenoisedText(denoisedRes); + } catch (error) { + console.error("Error getting denoised text:", error); + } + } + + if (newDenoisedUrl === undefined) { + newDenoisedUrl = recordedBlob; + } + setRecordedAudio((prevUrl) => { + if (prevUrl) { + URL.revokeObjectURL(prevUrl); + } + return newDenoisedUrl; + }); + } catch (error) { + console.error("Error processing audio:", error); + } + setLoader(false); + }; + + const transcodeFile = async (recordedBlob, inputType, isDenoised) => { + const blobResponse = await fetch(recordedBlob); + + if (!blobResponse.ok) { + throw new Error(`HTTP error! Status: ${response.status}`); + } + + const audioBlob = await blobResponse.blob(); + const fileBuffer = await audioBlob.arrayBuffer(); + + await ffmpeg.FS( + "writeFile", + `input.${inputType}`, + new Uint8Array(fileBuffer) + ); + + if (!isDenoised) { + await ffmpeg.run( + "-i", + `input.${inputType}`, + "-acodec", + "pcm_s16le", + "-ar", + "16000", + "-ac", + "1", + "output.wav" + ); + } else { + await ffmpeg.run( + "-i", + `input.${inputType}`, + "-acodec", + "pcm_s16le", + "-ar", + "16000", + "-ac", + "1", + "-af", + "arnndn=m=cb.rnnn", + "output.wav" + ); + } + + const outData = await ffmpeg.FS("readFile", "output.wav"); + return outData.buffer; + }; + + const runModel = async (data) => { + const data_length = data[0][0].length; + const i = data.length; + const j = data[0].length; + const k = data[0][0].length; + const arr = []; + for (let a = 0; a < i; a++) { + for (let b = 0; b < j; b++) { + for (let c = 0; c < k; c++) { + arr.push(data[a][b][c]); + } + } + } + const audio_tensor = new window.ort.Tensor( + "float32", + new Float32Array(arr), + [i, j, k] + ); + const audio_tensor_length = new window.ort.Tensor( + "int64", + new BigInt64Array([BigInt(data_length)]) + ); + const feeds = { audio_signal: audio_tensor, length: audio_tensor_length }; + const results = await window.offlineSession.run(feeds); + return results.logprobs.cpuData; + }; + + const getResponseText = async (audioBlob) => { + try { + let printed = false; + let lastResult = ""; + let resultList = []; + let vad = window.vad; + let buffer = window.wasmBuffer; + let result; + + let expectedSampleRate = 16000; + + const arrayBuffer = await audioBlob.arrayBuffer(); + const audioContext = new AudioContext(); + const audioBuffer = await audioContext.decodeAudioData(arrayBuffer); + + let recordSampleRate = audioBuffer.sampleRate; + let recognizer_stream = window.sherpaRecognizer; + + function downsampleBuffer(buffer, exportSampleRate) { + if (exportSampleRate === recordSampleRate) { + return buffer; + } + var sampleRateRatio = recordSampleRate / exportSampleRate; + var newLength = Math.round(buffer.length / sampleRateRatio); + var result = new Float32Array(newLength); + var offsetResult = 0; + var offsetBuffer = 0; + while (offsetResult < result.length) { + var nextOffsetBuffer = Math.round( + (offsetResult + 1) * sampleRateRatio + ); + var accum = 0, + count = 0; + for ( + var i = offsetBuffer; + i < nextOffsetBuffer && i < buffer.length; + i++ + ) { + accum += buffer[i]; + count++; + } + result[offsetResult] = accum / count; + offsetResult++; + offsetBuffer = nextOffsetBuffer; + } + return result; + } + + let samples = audioBuffer.getChannelData(0); + samples = downsampleBuffer(samples, expectedSampleRate); + + if (import.meta.env.VITE_APP_SHERPA_VAD_ENABLED === "true") { + buffer.push(samples); + + while (buffer.size() > vad.config.sileroVad.windowSize) { + const s = buffer.get(buffer.head(), vad.config.sileroVad.windowSize); + vad.acceptWaveform(s); + buffer.pop(vad.config.sileroVad.windowSize); + + if (vad.isDetected() && !printed) { + printed = true; + lastResult = "Speech detected"; + } + + if (!vad.isDetected()) { + printed = false; + if (lastResult != "") { + resultList.push(lastResult); + } + lastResult = ""; + } + + while (!vad.isEmpty()) { + const segment = vad.front(); + vad.pop(); + + try { + recognizer_stream = await window.sherpaRecognizer?.createStream(); + recognizer_stream?.acceptWaveform( + expectedSampleRate, + segment.samples + ); + window.sherpaRecognizer?.decode(recognizer_stream); + result = window.sherpaRecognizer?.getResult(recognizer_stream); + recognizer_stream?.free(); + } catch (error) { + console.error("Error getting response text:", error); + window.sherpaRecognizer?.free(); + } + } + } + } else { + try { + recognizer_stream = await window.sherpaRecognizer?.createStream(); + recognizer_stream?.acceptWaveform(expectedSampleRate, samples); + window.sherpaRecognizer?.decode(recognizer_stream); + result = window.sherpaRecognizer?.getResult(recognizer_stream); + recognizer_stream?.free(); + } catch (error) { + console.error("Error getting response text:", error); + window.sherpaRecognizer?.free(); + } + } + + return result?.text; + } catch (error) { + console.error("Error getting response text:", error); + window.sherpaRecognizer?.free(); + } + }; + const initiateValues = async () => { const currIndex = (await localStorage.getItem("index")) || 1; setCurrentIndex(currIndex); @@ -291,15 +675,161 @@ function VoiceAnalyser(props) { useEffect(() => { if (props.isNextButtonCalled) { - if (recordedAudioBase64 !== "") { + if (recordedAudio !== "") { const lang = getLocalData("lang") || "ta"; - fetchASROutput(lang, recordedAudioBase64); + if (props.offilnePractice) { + // Helper function to get duration from a blob URL + const getAudioDuration = async (audioUrl) => { + const response = await fetch(audioUrl); + const blob = await response.blob(); + return new Promise((resolve, reject) => { + const reader = new FileReader(); + reader.onload = async () => { + try { + const arrayBuffer = reader.result; + const audioContext = new AudioContext(); + const audioBuffer = await audioContext.decodeAudioData( + arrayBuffer + ); + resolve(audioBuffer.duration); + } catch (e) { + reject(e); + } + }; + reader.onerror = reject; + reader.readAsArrayBuffer(blob); + }); + }; + + (async () => { + try { + const durationSeconds = await getAudioDuration(recordedAudio); + const durationMinutes = durationSeconds / 60; + const wpmNonDenoised = ( + nonDenoisedText.split(" ").length / durationMinutes + ).toFixed(2); + const wpmDenoised = ( + denoisedText.split(" ").length / durationMinutes + ).toFixed(2); + + const fluencyAccuracyNonDenoised = fuzz.ratio( + props.originalText, + nonDenoisedText + ); + const fluencyAccuracyDenoised = fuzz.ratio( + props.originalText, + denoisedText + ); + + const fluencyCategoryNonDenoised = decideFluencyCategory( + wpmNonDenoised, + fluencyAccuracyNonDenoised + ); + const fluencyCategoryDenoised = decideFluencyCategory( + wpmDenoised, + fluencyAccuracyDenoised + ); + + props.setOfflineReport({ + nonDenoisedText, + originalText: props.originalText, + nonDenoisedTextTokens, + denoisedTextTokens, + denoisedText, + wpmNonDenoised, + fluencyAccuracyNonDenoised, + fluencyAccuracyDenoised, + wpmDenoised, + fluencyCategoryNonDenoised, + fluencyCategoryDenoised, + }); + + // TODO: Remove false when VITE_AWS_S3_BUCKET_NAME and keys added + let OfflineAudioFileName = ""; + const sessionId = getLocalData("sessionId"); + const { originalText, contentType, contentId, currentLine } = + props; + + if (import.meta.env.VITE_CAPTURE_AUDIO === "true") { + let getContentId = currentLine; + OfflineAudioFileName = `${ + import.meta.env.VITE_CHANNEL + }/${sessionId}-${Date.now()}-${getContentId}.wav`; + + const command = new PutObjectCommand({ + Bucket: import.meta.env.VITE_AWS_S3_BUCKET_NAME, + Key: OfflineAudioFileName, + Body: Uint8Array.from(window.atob(recordedAudioBase64), (c) => + c.charCodeAt(0) + ), + ContentType: "audio/wav", + }); + try { + await S3Client.send(command); + } catch (err) {} + } + + response( + { + // Required + target: + import.meta.env.VITE_CAPTURE_AUDIO === "true" + ? `${OfflineAudioFileName}` + : "", // Required. Target of the response + //"qid": "", // Required. Unique assessment/question id + type: "OFFLINE", // Required. Type of response. CHOOSE, DRAG, SELECT, MATCH, INPUT, SPEAK, WRITE + values: [ + { original_text: props.originalText }, + { nonDenoisedText }, + { denoisedText }, + { fluencyAccuracyNonDenoised }, + { fluencyAccuracyDenoised }, + { fluencyCategoryNonDenoised }, + { fluencyCategoryDenoised }, + { duration: durationSeconds }, + ], + }, + "ET" + ); + + if (props.handleNext) { + props.handleNext(); + if (temp_audio !== null) { + temp_audio.pause(); + setPauseAudio(false); + } + } + setLoader(false); + if (props.setIsNextButtonCalled) { + props.setIsNextButtonCalled(false); + } + } catch (error) { + setLoader(false); + console.error("Error getting audio duration:", error); + } + })(); + } else { + fetchASROutput(lang, recordedAudioBase64); + } setLoader(true); setEnableAfterLoad(false); } } }, [props.isNextButtonCalled]); + const decideFluencyCategory = (wpm, accuracy) => { + if (wpm >= 100 && accuracy >= 95) { + return "Fluent"; + } else if (wpm >= 80 && wpm < 100 && accuracy >= 85) { + return "Moderately Fluent"; + } else if (wpm >= 60 && wpm < 80 && accuracy >= 70) { + return "Disfluent"; + } else if (wpm < 60 || accuracy < 70) { + return "Very Disfluent"; + } + return "Moderately Fluent"; + }; + useEffect(() => { if (props.originalText) { setEnableAfterLoad(true); @@ -366,12 +896,32 @@ function VoiceAnalyser(props) { const responseStartTime = new Date().getTime(); let responseText = ""; let profanityWord = ""; + let topkTokens; let newThresholdPercentage = 0; let data = {}; + let response_text = ""; + // let mode = isOfflineModel ? "offline" : "online"; + let mode = "online"; + let pause_count = recordedPauseCount; + + if ( + fuzz.ratio(originalText, nonDenoisedText) >= + fuzz.ratio(originalText, denoisedText) + ) { + response_text = nonDenoisedText; + topkTokens = nonDenoisedTextTokens[0] || []; + } else { + response_text = denoisedText; + topkTokens = denoisedTextTokens[0] || []; + } + let requestBody = { original_text: originalText, - audio: base64Data, + response_text: response_text, + mode: mode, + pause_count: pause_count, + audio: mode === "offline" ? "" : base64Data, user_id: virtualId, session_id: sessionId, language: lang, @@ -382,6 +932,10 @@ function VoiceAnalyser(props) { mechanics_id: getLocalData("mechanism_id") || "", }; + if (topkTokens.length > 0) { + requestBody.output = topkTokens; + } + if (props.selectedOption) { requestBody["is_correct_choice"] = props.selectedOption?.isAns; } @@ -396,7 +950,7 @@ function VoiceAnalyser(props) { data = updateLearnerData; responseText = data.responseText; profanityWord = await filterBadWords(data.responseText); - if (profanityWord !== data.responseText) { + if (profanityWord.includes("**")) { props?.setOpenMessageDialog({ message: "Please avoid using inappropriate language.", isError: true, @@ -650,7 +1204,9 @@ function VoiceAnalyser(props) { } else { isLiveLost = false; } - const audio = new Audio(isLiveLost ? livesCutAudio : livesAddAudio); + const audio = new Audio( + isLiveLost ? livesCutAudioPreloaded : livesAddAudioPreloaded + ); audio.play(); // Update the state or data structure with the new lives data. @@ -730,6 +1286,7 @@ function VoiceAnalyser(props) { buttonAnimation={props.buttonAnimation} handleStartRecording={props.handleStartRecording} handleStopRecording={props.handleStopRecording} + handleProcess={handleProcess} /> {/* */} diff --git a/src/utils/audioImports.js b/src/utils/audioImports.js new file mode 100644 index 00000000..4c47dc4a --- /dev/null +++ b/src/utils/audioImports.js @@ -0,0 +1,45 @@ +// Audio imports +const audioFiles = { + s1: new URL("../assets/audio/S1.m4a", import.meta.url).href, + s2: new URL("../assets/audio/S2.m4a", import.meta.url).href, + s3: new URL("../assets/audio/S3.m4a", import.meta.url).href, + s4: new URL("../assets/audio/S4.m4a", import.meta.url).href, + s5: new URL("../assets/audio/S5.m4a", import.meta.url).href, + s6: new URL("../assets/audio/S6.m4a", import.meta.url).href, + v1: new URL("../assets/audio/V1.m4a", import.meta.url).href, + v2: new URL("../assets/audio/V2.m4a", import.meta.url).href, + v3: new URL("../assets/audio/V3.m4a", import.meta.url).href, + v4: new URL("../assets/audio/V4.m4a", import.meta.url).href, + v5: new URL("../assets/audio/V5.m4a", import.meta.url).href, + v6: new URL("../assets/audio/V6.m4a", import.meta.url).href, + v7: new URL("../assets/audio/V7.m4a", import.meta.url).href, + v8: new URL("../assets/audio/V8.m4a", import.meta.url).href, + v10: new URL("../assets/audio/V10.mp3", import.meta.url).href, + livesAdd: new URL("../assets/audio/livesAdd.wav", import.meta.url).href, + livesCut: new URL("../assets/audio/livesCut.wav", import.meta.url).href, +}; + +export const AudioPath = { + 1: { + 0: audioFiles.v1, + 1: audioFiles.v2, + 2: audioFiles.v3, + 3: audioFiles.v4, + 4: audioFiles.v5, + 5: audioFiles.v6, + 6: audioFiles.v7, + 7: audioFiles.v8, + 10: audioFiles.v10, + }, + 2: { + 0: audioFiles.s1, + 1: audioFiles.s2, + 2: audioFiles.s3, + 3: audioFiles.s4, + 4: audioFiles.s5, + 5: audioFiles.s6, + }, +}; + +export const livesAddAudio = audioFiles.livesAdd; +export const livesCutAudio = audioFiles.livesCut; diff --git a/src/utils/constants.jsx b/src/utils/constants.jsx index 0b04da60..a4a1b8fc 100644 --- a/src/utils/constants.jsx +++ b/src/utils/constants.jsx @@ -7850,18 +7850,17 @@ export const levelGetContent = { title: "P1", criteria: "word", template: "simple", - tags: "CEFR_ENG", - storyMode: true, + offline: true, }, - { title: "P2", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P3", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P4", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "S1", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P5", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P6", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P7", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P8", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "S2", criteria: "word", template: "simple", tags: "CEFR_ENG" }, + { title: "P2", criteria: "word", offline: true, template: "simple" }, + { title: "P3", criteria: "word", offline: true, template: "simple" }, + { title: "P4", criteria: "word", offline: true, template: "simple" }, + { title: "S1", criteria: "word", template: "simple" }, + { title: "P5", criteria: "word", offline: true, template: "simple" }, + { title: "P6", criteria: "word", offline: true, template: "simple" }, + { title: "P7", criteria: "word", offline: true, template: "simple" }, + { title: "P8", criteria: "word", offline: true, template: "simple" }, + { title: "S2", criteria: "word", offline: true, template: "simple" }, ], 1: [ { @@ -7879,8 +7878,20 @@ export const levelGetContent = { tags: "CEFR_ENG", mechanism: { id: "mechanic_7", name: "formAWord2" }, }, - { title: "P3", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P4", criteria: "word", template: "simple", tags: "CEFR_ENG" }, + { + title: "P3", + criteria: "word", + template: "simple", + offline: true, + tags: "CEFR_ENG", + }, + { + title: "P4", + criteria: "word", + template: "simple", + offline: true, + tags: "CEFR_ENG", + }, { title: "S1", criteria: "word", template: "simple", tags: "CEFR_ENG" }, { title: "P5", @@ -7896,8 +7907,20 @@ export const levelGetContent = { tags: "CEFR_ENG", mechanism: { id: "mechanic_7", name: "formAWord2" }, }, - { title: "P7", criteria: "word", template: "simple", tags: "CEFR_ENG" }, - { title: "P8", criteria: "word", template: "simple", tags: "CEFR_ENG" }, + { + title: "P7", + criteria: "word", + template: "simple", + offline: true, + tags: "CEFR_ENG", + }, + { + title: "P8", + criteria: "word", + template: "simple", + offline: true, + tags: "CEFR_ENG", + }, { title: "S2", criteria: "word", template: "simple", tags: "CEFR_ENG" }, ], 2: [ @@ -7906,6 +7929,7 @@ export const levelGetContent = { criteria: "word", template: "simple", tags: "CEFR_ENG", + offline: true, //storyMode: true, }, { @@ -7926,7 +7950,7 @@ export const levelGetContent = { title: "P4", criteria: "word", template: "simple", - tags: "CEFR_ENG", + offline: true, }, { title: "S1", criteria: "word", template: "simple", tags: "CEFR_ENG" }, { @@ -7947,15 +7971,15 @@ export const levelGetContent = { title: "P7", criteria: "word", template: "simple", - tags: "CEFR_ENG", + offline: true, }, { title: "P8", criteria: "word", template: "simple", - tags: "CEFR_ENG", + offline: true, }, - { title: "S2", criteria: "word", template: "simple", tags: "CEFR_ENG" }, + { title: "S2", criteria: "word", template: "simple" }, ], 3: [ { @@ -7992,7 +8016,6 @@ export const levelGetContent = { title: "S1", criteria: "sentence", template: "simple", - tags: "CEFR_ENG", }, { title: "P5", @@ -8004,6 +8027,7 @@ export const levelGetContent = { title: "P6", criteria: "sentence", template: "simple", + offline: true, //mechanism: { id: "syllable_puzzle", name: "syllablePuzzle" }, }, { @@ -8025,7 +8049,6 @@ export const levelGetContent = { title: "S2", criteria: "sentence", template: "simple", - tags: "CEFR_ENG", }, ], 4: [ @@ -8033,71 +8056,59 @@ export const levelGetContent = { title: "P1", criteria: "sentence", template: "simple", - competency: "L1.1", - storyMode: true, - mechanism: { id: "mechanic_1", name: "fillInTheBlank" }, + offline: true, }, { title: "P2", criteria: "sentence", template: "simple", - competency: "L1.2", - mechanism: { id: "mechanic_3", name: "formASentence" }, + offline: true, }, { title: "P3", criteria: "sentence", template: "simple", - competency: "L1.1", - mechanism: { id: "mechanic_2", name: "readTheImage" }, + offline: true, }, { title: "P4", criteria: "sentence", template: "simple", - competency: "L1.2", + offline: true, }, { title: "S1", criteria: "sentence", template: "simple", - competency: "L1.1, L1.2", - mechanism: { id: "mechanic_2", name: "readTheImage" }, }, { title: "P5", criteria: "sentence", template: "simple", - competency: "L1.2", - mechanism: { id: "mechanic_1", name: "fillInTheBlank" }, + offline: true, }, { title: "P6", criteria: "sentence", template: "simple", - competency: "L1.1", - mechanism: { id: "mechanic_3", name: "formASentence" }, + offline: true, }, { title: "P7", criteria: "sentence", template: "simple", - competency: "L1.2", - mechanism: { id: "mechanic_2", name: "readTheImage" }, + offline: true, }, { title: "P8", criteria: "sentence", template: "simple", - competency: "L1.1", - mechanism: { id: "mechanic_1", name: "fillInTheBlank" }, + offline: true, }, { title: "S2", criteria: "sentence", template: "simple", - competency: "L1.2", - mechanism: { id: "mechanic_2", name: "readTheImage" }, }, ], 5: [ @@ -8105,70 +8116,59 @@ export const levelGetContent = { title: "P1", criteria: "sentence", template: "simple", - competency: "L1.5", - storyMode: true, - mechanism: { id: "mechanic_1", name: "fillInTheBlank" }, + offline: true, }, { title: "P2", criteria: "sentence", template: "simple", - competency: "L1.6", - mechanism: { id: "mechanic_3", name: "formASentence" }, + offline: true, }, { title: "P3", criteria: "sentence", template: "simple", - competency: "L1.5", - mechanism: { id: "mechanic_2", name: "readTheImage" }, + offline: true, }, { title: "P4", criteria: "sentence", template: "simple", - competency: "L1.5", + offline: true, }, { title: "S1", criteria: "sentence", template: "simple", - competency: "L1.5, L1.6", - mechanism: { id: "mechanic_2", name: "readTheImage" }, }, { title: "P5", criteria: "sentence", template: "simple", - competency: "L1.6", - mechanism: { id: "mechanic_1", name: "fillInTheBlank" }, + offline: true, }, { title: "P6", criteria: "sentence", template: "simple", - competency: "L1.5", - mechanism: { id: "mechanic_3", name: "formASentence" }, + offline: true, }, { title: "P7", criteria: "sentence", template: "simple", - competency: "L1.6", - mechanism: { id: "mechanic_2", name: "readTheImage" }, + offline: true, }, { title: "P8", criteria: "sentence", template: "simple", - competency: "L1.5", + offline: true, }, { title: "S2", criteria: "sentence", template: "simple", - competency: "L1.6", - mechanism: { id: "mechanic_2", name: "readTheImage" }, }, ], 6: [ @@ -8176,26 +8176,25 @@ export const levelGetContent = { title: "P1", criteria: "sentence", template: "simple", - competency: "L1.3", - storyMode: true, + offline: true, }, { title: "P2", criteria: "sentence", template: "simple", - competency: "L1.3", - storyMode: true, - mechanism: { id: "mechanic_1", name: "fillInTheBlank" }, + offline: true, }, { title: "P3", criteria: "paragraph", template: "simple", + offline: true, }, { title: "P4", criteria: "paragraph", template: "simple", + offline: true, }, { title: "S1", @@ -8206,23 +8205,25 @@ export const levelGetContent = { title: "P5", criteria: "sentence", template: "simple", - competency: "L1.3", - storyMode: true, + offline: true, }, { title: "P6", criteria: "paragraph", template: "simple", + offline: true, }, { title: "P7", criteria: "paragraph", template: "simple", + offline: true, }, { title: "P8", criteria: "paragraph", template: "simple", + offline: true, }, { title: "S2", @@ -8235,66 +8236,59 @@ export const levelGetContent = { title: "P1", criteria: "sentence", template: "simple", - competency: "L1.8", - storyMode: true, + offline: true, }, { title: "P2", criteria: "sentence", template: "simple", - competency: "L1.8", - storyMode: true, - mechanism: { id: "mechanic_2", name: "readTheImage" }, + offline: true, }, { title: "P3", criteria: "paragraph", template: "simple", - competency: "L1.8", + offline: true, }, { title: "P4", criteria: "paragraph", template: "simple", - competency: "L1.8", + offline: true, }, { title: "S1", criteria: "paragraph", template: "simple", - competency: "L1.8", }, { title: "P5", criteria: "paragraph", template: "simple", - competency: "L1.8", - storyMode: true, + offline: true, }, { title: "P6", criteria: "paragraph", template: "simple", - competency: "L1.8", - storyMode: true, + offline: true, }, { title: "P7", criteria: "paragraph", template: "simple", - competency: "L1.8", + offline: true, }, { title: "P8", criteria: "paragraph", template: "simple", - competency: "L1.8", + offline: true, }, { title: "S2", criteria: "paragraph", template: "simple", - competency: "L1.8", }, ], 8: [ @@ -9638,22 +9632,54 @@ export const levelConfig = { }; const AllLanguages = [ - { name: "English", lang: "en", symbol: "A" }, - { name: "தமிழ்", lang: "ta", symbol: "இ" }, - { name: "हिंदी", lang: "hi", symbol: "क" }, - { name: "ಕನ್ನಡ", lang: "kn", symbol: "ಕ" }, - { name: "తెలుగు", lang: "te", symbol: "ఈ" }, - { name: "ગુજરાતી", lang: "gu", symbol: "ક" }, - { name: "ଓଡିଆ", lang: "or", symbol: "କ" }, + { name: "English", lang: "en", symbol: "A", offline: false }, + { name: "தமிழ்", lang: "ta", symbol: "இ", offline: false }, + { name: "हिंदी", lang: "hi", symbol: "क", offline: false }, + { name: "ಕನ್ನಡ", lang: "kn", symbol: "ಕ", offline: false }, + { name: "తెలుగు", lang: "te", symbol: "ఈ", offline: false }, + { name: "ગુજરાતી", lang: "gu", symbol: "ક", offline: false }, + { name: "ଓଡିଆ", lang: "or", symbol: "କ", offline: false }, + { name: "தமிழ் offline", lang: "ta", symbol: "இ", offline: true }, + { name: "English-Offline", lang: "en", symbol: "A", offline: true }, + { name: "ಕನ್ನಡ offline", lang: "kn", symbol: "ಕ", offline: true }, +]; + +export const offlineModelsInfo = [ + { + modelName: "english", + lang: "en", + modelURL: "./models/sherpa-onnx-wasm-main-vad-asr.data", + }, + { + modelName: "kannada", + lang: "kn", + modelURL: "/models/kannada.quant.onnx", + vacabFileName: "kannada.vocab", + vocabUrl: "/models/kannada.vocab", + }, + { + modelName: "tamil", + lang: "ta", + modelURL: "/models/tamil.quant.onnx", + vacabFileName: "tamil.vocab", + vocabUrl: "/models/tamil.vocab", + }, ]; const appLanguages = import.meta.env.VITE_LANGUAGES ? JSON.parse(import.meta.env.VITE_LANGUAGES) : []; -export const languages = AllLanguages.filter((lang) => - appLanguages.includes(lang.lang) -); +const offlineLanguages = import.meta.env.VITE_APP_ASR_OFFLINE_LANGUAGUAGES + ? JSON.parse(import.meta.env.VITE_APP_ASR_OFFLINE_LANGUAGUAGES) + : []; + +export const languages = AllLanguages.filter((lang) => { + return ( + (appLanguages.includes(lang.lang) && !lang.offline) || + (offlineLanguages.includes(lang.lang) && lang.offline) + ); +}); export const randomizeArray = (arr) => { let wordsArr = [...arr]; @@ -9686,7 +9712,7 @@ export function handleEncrypt(value) { export function handleDecrypt(value) { const API_SECRET_KEY = localStorage.getItem("token"); - console.log("newToken", API_SECRET_KEY); + //console.log("newToken", API_SECRET_KEY); if (!API_SECRET_KEY) { console.warn("Encryption key missing"); @@ -9713,3 +9739,4 @@ export const sendTestRigScore = (score) => { ); } }; +export const rnnoiseModelPath = "models/cb.rnnn"; diff --git a/src/utils/useFFmpeg.jsx b/src/utils/useFFmpeg.jsx new file mode 100644 index 00000000..f8a9ac44 --- /dev/null +++ b/src/utils/useFFmpeg.jsx @@ -0,0 +1,45 @@ +import { useState, useEffect } from "react"; +import { createFFmpeg, fetchFile } from "@ffmpeg/ffmpeg"; + +let ffmpeg = null; +let loadingPromise = null; + +const useFFmpeg = () => { + const [loading, setLoading] = useState(true); + const [error, setError] = useState(null); + + useEffect(() => { + const loadFFmpeg = async () => { + try { + if (!ffmpeg) { + ffmpeg = createFFmpeg({ + log: false, + corePath: + "https://unpkg.com/@ffmpeg/core@0.11.0/dist/ffmpeg-core.js", + }); + } + + if (!loadingPromise) { + loadingPromise = ffmpeg.load(); + } + + await loadingPromise; + setLoading(false); + } catch (err) { + console.error("Error loading FFmpeg:", err); + setError(err); + setLoading(false); + } + }; + + loadFFmpeg(); + + return () => { + // Cleanup if needed + }; + }, []); + + return { ffmpeg, loading, error }; +}; + +export default useFFmpeg; diff --git a/src/views/AppContent/AppContent.jsx b/src/views/AppContent/AppContent.jsx index 6ac29587..3275f1bd 100644 --- a/src/views/AppContent/AppContent.jsx +++ b/src/views/AppContent/AppContent.jsx @@ -21,9 +21,6 @@ const PrivateRoute = (props) => { return <>{props.children}; }; const AppContent = ({ routes }) => { - // const navigate = useNavigate(); - // const location = useLocation(); - return ( diff --git a/src/views/LoginPage/LoginPage.css b/src/views/LoginPage/LoginPage.css index ea99dcaf..d0b4f207 100644 --- a/src/views/LoginPage/LoginPage.css +++ b/src/views/LoginPage/LoginPage.css @@ -11,18 +11,58 @@ display: flex; align-items: center; justify-content: center; - width: 500px; + /* Animated gradient background */ + background: linear-gradient(135deg, #667eea, #764ba2); + background-size: 200% 200%; + animation: gradientShift 8s ease infinite; } -.loginBox { - padding: 30px; - border-radius: 2px; - box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1); - background-color: #ffffff; +/* Smoothly shift the gradient left-to-right and back */ +@keyframes gradientShift { + 0% { background-position: 0% 50%; } + 50% { background-position: 100% 50%; } + 100% { background-position: 0% 50%; } } -.textField { +/*************************************************************** + 2. CONTAINER + - The MUI Container inside .loginPage +***************************************************************/ +.loginPage__container { + max-width: 450px!important; width: 100%; + padding: 0 16px; + box-sizing: border-box; +} + +/*************************************************************** + 3. LOGIN BOX + - Centered card with subtle animation +***************************************************************/ +.loginPage .loginBox { + background-color: #fff; + padding: 32px 24px; + border-radius: 12px; + box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.2); + animation: fadeInUp 0.8s ease forwards; +} + +@keyframes fadeInUp { + 0% { + opacity: 0; + transform: translateY(20px); + } + 100% { + opacity: 1; + transform: translateY(0); + } +} + +/*************************************************************** + 4. TEXT FIELDS + - Margin spacing and focus styling +***************************************************************/ +.loginPage .textField { margin-bottom: 16px; } diff --git a/src/views/Practice/Practice.jsx b/src/views/Practice/Practice.jsx index d64dcd6a..42618e35 100644 --- a/src/views/Practice/Practice.jsx +++ b/src/views/Practice/Practice.jsx @@ -1,4 +1,4 @@ -import React, { useEffect, useState } from "react"; +import React, { useEffect, useRef, useState } from "react"; import Mechanics2 from "../../components/Practice/Mechanics2"; import Mechanics3 from "../../components/Practice/Mechanics3"; import Mechanics4 from "../../components/Practice/Mechanics4"; @@ -86,6 +86,24 @@ const Practice = () => { const limit = 5; const [disableScreen, setDisableScreen] = useState(false); const [mechanism, setMechanism] = useState(""); + const [isAttemptedOnce, setIsAttemptedOnce] = useState(false); + const [isOffline, setIsOffline] = useState(false); + + // Set offline report + const [offlineReports, setOfflineReports] = useState([]); + const offlineReportsRef = useRef(offlineReports); + + useEffect(() => { + offlineReportsRef.current = offlineReports; + }, [offlineReports]); + + const addOfflineReport = (report) => { + console.log("addOfflineReport", report); + setOfflineReports((prevReports) => [...prevReports, report]); + }; + + const [reattemptIndices, setReattemptIndices] = useState([]); + const [isReattempt, setIsReattempt] = useState(false); const [livesData, setLivesData] = useState(); const [gameOverData, setGameOverData] = useState(); @@ -689,6 +707,13 @@ const Practice = () => { setGameOverData({ gameOver: true, userWon, ...data, meetsFluencyCriteria }); }; + // useEffect(() => { + // console.log(offlineReport) + // if (offlineReport) { + // setLocalData("offlineReport", true); + // } + // }, [offlineReport]); + useEffect(() => { if (startShowCase) { setLivesData({ ...livesData, lives: LIVES }); @@ -729,9 +754,12 @@ const Practice = () => { } else { stepName = step.fullName; } - setOpenMessageDialog({ - message: `You have successfully completed ${stepName} `, - }); + + if (!isReattempt) { + setOpenMessageDialog({ + message: `You have successfully completed ${stepName} `, + }); + } }, 1200); } }, [currentQuestion]); @@ -777,7 +805,6 @@ const Practice = () => { setEnableNext(false); try { const lang = getLocalData("lang"); - const virtualId = getLocalData("virtualId"); const sessionId = getLocalData("sessionId"); @@ -857,6 +884,64 @@ const Practice = () => { // }else{ if (currentQuestion === questions.length - 1 || isGameOver) { + if (isOffline) { + // Notify user to reattempt failed items for the next set attempt. + + const failedIndices = offlineReports.reduce( + (indices, report, index) => { + if ( + (report.fluencyCategoryNonDenoised === "Disfluent" || + report.fluencyCategoryNonDenoised === "Very Disfluent") && + (report.fluencyCategoryDenoised === "Disfluent" || + report.fluencyCategoryDenoised === "Very Disfluent") + ) { + indices.push(index); + } + return indices; + }, + [] + ); + + if (failedIndices.length > 0 && !isReattempt) { + setIsReattempt(true); + // Notify user to reattempt failed items for the next set attempt. + const failedCount = failedIndices.length; + const message = `You have ${failedCount} item${ + failedCount > 1 ? "s" : "" + } that need improvement. Please try ${ + failedCount > 1 ? "them" : "it" + } again.`; + + setOpenMessageDialog({ + message, + isError: true, + dontShowHeader: true, + }); + + // Build a new questions array containing only the failed items. + const failedQuestions = questions.filter((q, index) => + failedIndices.includes(index) + ); + + // Reset the offline reports for the next attempt. + //setOfflineReports([]); + + // Update the state for the next set attempt to include only failed questions. + setQuestions(failedQuestions); + setCurrentQuestion(0); + setIsAttemptedOnce(true); + return; // Stop further progression; user will now reattempt failed items. + } else { + setIsReattempt(false); + setIsAttemptedOnce(false); + // Optionally clear the offlineReports for the next set. + setOfflineReports([]); + // setOpenMessageDialog({ + // message: `You have successfully completed ${practiceSteps[currentPracticeStep].fullName} `, + // }); + } + } + // navigate or setNextPracticeLevel let currentPracticeStep = practiceProgress.currentPracticeStep; let isShowCase = currentPracticeStep === 4 || currentPracticeStep === 9; // P4 or P8 @@ -1042,6 +1127,7 @@ const Practice = () => { // TODO: needs to revisit this logic setTimeout(() => { setMechanism(currentGetContent.mechanism); + setIsOffline(currentGetContent.offline); }, 1000); // if(virtualId === "6760800019"){ @@ -1251,6 +1337,7 @@ const Practice = () => { setQuestions(dummyQuestions); } setMechanism(currentGetContent.mechanism); + setIsOffline(currentGetContent.offline); // if (virtualId === "6760800019" || level == 12) { // //setMechanism({ id: "read_aloud", name: "readAloud" }); @@ -1369,6 +1456,7 @@ const Practice = () => { setTimeout(() => { setMechanism(currentGetContent.mechanism); + setIsOffline(currentGetContent.offline); }, 1000); setCurrentQuestion(practiceProgress?.currentQuestion || 0); setLocalData("practiceProgress", JSON.stringify(practiceProgress)); @@ -1532,11 +1620,12 @@ const Practice = () => { (mechanism?.id === "mechanic_15" && rFlow !== "true") ) { const mechanics_data = questions[currentQuestion]?.mechanics_data; - + console.log(isOffline, "isOffline"); return ( { setVoiceText, setRecordedAudio, setVoiceAnimate, + offilnePractice: + !isShowCase && + isOffline && + localStorage.getItem("isOfflineModel") === "true", storyLine, handleNext, type: questions[currentQuestion]?.contentType, diff --git a/vite.config.js b/vite.config.js index b6922d2f..6fe17c6c 100644 --- a/vite.config.js +++ b/vite.config.js @@ -21,8 +21,9 @@ export default defineConfig({ open: true, port: 3000, headers: { - 'Cross-Origin-Opener-Policy': 'same-origin', - //'Cross-Origin-Embedder-Policy': 'require-corp', + "Cross-Origin-Opener-Policy": "same-origin", + "Cross-Origin-Embedder-Policy": "require-corp", }, - } + }, + assetsInclude: ['**/*.m4a', '**/*.wav', '**/*.mp3'] }); \ No newline at end of file diff --git a/vite.config.mjs b/vite.config.mjs new file mode 100644 index 00000000..deb95103 --- /dev/null +++ b/vite.config.mjs @@ -0,0 +1,28 @@ +import { defineConfig } from 'vite'; +import react from '@vitejs/plugin-react'; +import wasm from "vite-plugin-wasm"; + +export default defineConfig({ + plugins: [ + react(), + wasm() + ], + build: { + target: 'esnext', + outDir: 'build', + }, + optimizeDeps: { + exclude: ['src/utils/constants.jsx'], + esbuildOptions: { + target: 'esnext' + } + }, + server: { + open: true, + port: 3000, + headers: { + 'Cross-Origin-Opener-Policy': 'same-origin', + 'Cross-Origin-Embedder-Policy': 'require-corp', + }, + } +}); diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 00000000..06f7e555 --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,45 @@ +import { defineConfig } from 'vite'; +import react from '@vitejs/plugin-react'; + +export default defineConfig({ + plugins: [ + react(), + { + name: 'handle-hoist-non-react-statics', + transform(code, id) { + if (id.includes('hoist-non-react-statics')) { + return { + code: `const hoistNonReactStatics = require('hoist-non-react-statics'); export default hoistNonReactStatics;`, + map: null + }; + } + } + } + ], + publicDir: 'public', + assetsInclude: ['**/*.m4a', '**/*.mp3', '**/*.wav'], + optimizeDeps: { + exclude: ['**/*.m4a', '**/*.mp3', '**/*.wav'] + }, + build: { + assetsInlineLimit: 0, + rollupOptions: { + output: { + assetFileNames: (assetInfo) => { + if (!assetInfo.name) return 'assets/[name][extname]'; + if (/\.(m4a|mp3|wav)$/.test(assetInfo.name)) { + return 'assets/audio/[name][extname]'; + } + return 'assets/[name][extname]'; + } + } + } + }, + server: { + headers: { + "Cross-Origin-Opener-Policy": "same-origin", + "Cross-Origin-Embedder-Policy": "require-corp", + 'Content-Security-Policy': "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://cdn.jsdelivr.net; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com https://fonts.cdnfonts.com; font-src 'self' https://fonts.googleapis.com https://fonts.cdnfonts.com https://fonts.gstatic.com; img-src 'self' data: blob: https://images.squarespace-cdn.com https://all-prod-content-service.s3.ap-south-1.amazonaws.com https://all-dev-content-service.s3.ap-south-1.amazonaws.com https://s3.ap-south-1.amazonaws.com https://raw.githubusercontent.com https://cdn.jsdelivr.net; connect-src 'self' *.theall.ai https://all-prod-content-service.s3.ap-south-1.amazonaws.com blob:; media-src 'self' blob: https://all-prod-content-service.s3.ap-south-1.amazonaws.com https://all-dev-content-service.s3.ap-south-1.amazonaws.com https://raw.githubusercontent.com; worker-src 'self' blob: https://d114esnbvw5tst.cloudfront.net; frame-src 'self'; frame-ancestors 'self';" + } + } +}); \ No newline at end of file diff --git a/yarn.lock b/yarn.lock deleted file mode 100644 index 40fdf3cb..00000000 --- a/yarn.lock +++ /dev/null @@ -1,7740 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@aashutoshrathi/word-wrap@^1.2.3": - version "1.2.6" - resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz" - integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== - -"@adobe/css-tools@^4.0.1": - version "4.2.0" - resolved "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.2.0.tgz" - integrity sha512-E09FiIft46CmH5Qnjb0wsW54/YQd69LsxeKUOWawmws1XWvyFGURnAChH0mlr7YPFR1ofwvUQfcL0J3lMxXqPA== - -"@ampproject/remapping@^2.2.0": - version "2.2.1" - resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz" - integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== - dependencies: - "@jridgewell/gen-mapping" "^0.3.0" - "@jridgewell/trace-mapping" "^0.3.9" - -"@aws-crypto/crc32@5.2.0": - version "5.2.0" - resolved "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz" - integrity sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg== - dependencies: - "@aws-crypto/util" "^5.2.0" - "@aws-sdk/types" "^3.222.0" - tslib "^2.6.2" - -"@aws-crypto/crc32c@5.2.0": - version "5.2.0" - resolved "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz" - integrity sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag== - dependencies: - "@aws-crypto/util" "^5.2.0" - "@aws-sdk/types" "^3.222.0" - tslib "^2.6.2" - -"@aws-crypto/sha1-browser@5.2.0": - version "5.2.0" - resolved "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz" - integrity sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg== - dependencies: - "@aws-crypto/supports-web-crypto" "^5.2.0" - "@aws-crypto/util" "^5.2.0" - "@aws-sdk/types" "^3.222.0" - "@aws-sdk/util-locate-window" "^3.0.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.6.2" - -"@aws-crypto/sha256-browser@5.2.0": - version "5.2.0" - resolved "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz" - integrity sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw== - dependencies: - "@aws-crypto/sha256-js" "^5.2.0" - "@aws-crypto/supports-web-crypto" "^5.2.0" - "@aws-crypto/util" "^5.2.0" - "@aws-sdk/types" "^3.222.0" - "@aws-sdk/util-locate-window" "^3.0.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.6.2" - -"@aws-crypto/sha256-js@^5.2.0", "@aws-crypto/sha256-js@5.2.0": - version "5.2.0" - resolved "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz" - integrity sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA== - dependencies: - "@aws-crypto/util" "^5.2.0" - "@aws-sdk/types" "^3.222.0" - tslib "^2.6.2" - -"@aws-crypto/supports-web-crypto@^5.2.0": - version "5.2.0" - resolved "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz" - integrity sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg== - dependencies: - tslib "^2.6.2" - -"@aws-crypto/util@^5.2.0": - version "5.2.0" - resolved "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz" - integrity sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ== - dependencies: - "@aws-sdk/types" "^3.222.0" - "@smithy/util-utf8" "^2.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-s3@^3.388.0": - version "3.674.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.674.0.tgz" - integrity sha512-/pbAGFXUFqhZPrb4vACYdJzAc/lX/MPW1sxRoiX46BVjvpT7QkYwRjlzuifskLyDf2TjkGNsXu+F6AgPGCXFUg== - dependencies: - "@aws-crypto/sha1-browser" "5.2.0" - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.670.0" - "@aws-sdk/client-sts" "3.670.0" - "@aws-sdk/core" "3.667.0" - "@aws-sdk/credential-provider-node" "3.670.0" - "@aws-sdk/middleware-bucket-endpoint" "3.667.0" - "@aws-sdk/middleware-expect-continue" "3.667.0" - "@aws-sdk/middleware-flexible-checksums" "3.669.0" - "@aws-sdk/middleware-host-header" "3.667.0" - "@aws-sdk/middleware-location-constraint" "3.667.0" - "@aws-sdk/middleware-logger" "3.667.0" - "@aws-sdk/middleware-recursion-detection" "3.667.0" - "@aws-sdk/middleware-sdk-s3" "3.674.0" - "@aws-sdk/middleware-ssec" "3.667.0" - "@aws-sdk/middleware-user-agent" "3.669.0" - "@aws-sdk/region-config-resolver" "3.667.0" - "@aws-sdk/signature-v4-multi-region" "3.674.0" - "@aws-sdk/types" "3.667.0" - "@aws-sdk/util-endpoints" "3.667.0" - "@aws-sdk/util-user-agent-browser" "3.670.0" - "@aws-sdk/util-user-agent-node" "3.669.0" - "@aws-sdk/xml-builder" "3.662.0" - "@smithy/config-resolver" "^3.0.9" - "@smithy/core" "^2.4.8" - "@smithy/eventstream-serde-browser" "^3.0.10" - "@smithy/eventstream-serde-config-resolver" "^3.0.7" - "@smithy/eventstream-serde-node" "^3.0.9" - "@smithy/fetch-http-handler" "^3.2.9" - "@smithy/hash-blob-browser" "^3.1.6" - "@smithy/hash-node" "^3.0.7" - "@smithy/hash-stream-node" "^3.1.6" - "@smithy/invalid-dependency" "^3.0.7" - "@smithy/md5-js" "^3.0.7" - "@smithy/middleware-content-length" "^3.0.9" - "@smithy/middleware-endpoint" "^3.1.4" - "@smithy/middleware-retry" "^3.0.23" - "@smithy/middleware-serde" "^3.0.7" - "@smithy/middleware-stack" "^3.0.7" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/node-http-handler" "^3.2.4" - "@smithy/protocol-http" "^4.1.4" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/url-parser" "^3.0.7" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.23" - "@smithy/util-defaults-mode-node" "^3.0.23" - "@smithy/util-endpoints" "^2.1.3" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-retry" "^3.0.7" - "@smithy/util-stream" "^3.1.9" - "@smithy/util-utf8" "^3.0.0" - "@smithy/util-waiter" "^3.1.6" - tslib "^2.6.2" - -"@aws-sdk/client-sso-oidc@3.670.0": - version "3.670.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.670.0.tgz" - integrity sha512-4qDK2L36Q4J1lfemaHHd9ZxqKRaos3STp44qPAHf/8QyX6Uk5sXgZNVO2yWM7SIEtVKwwBh/fZAsdBkGPBfZcw== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.667.0" - "@aws-sdk/credential-provider-node" "3.670.0" - "@aws-sdk/middleware-host-header" "3.667.0" - "@aws-sdk/middleware-logger" "3.667.0" - "@aws-sdk/middleware-recursion-detection" "3.667.0" - "@aws-sdk/middleware-user-agent" "3.669.0" - "@aws-sdk/region-config-resolver" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@aws-sdk/util-endpoints" "3.667.0" - "@aws-sdk/util-user-agent-browser" "3.670.0" - "@aws-sdk/util-user-agent-node" "3.669.0" - "@smithy/config-resolver" "^3.0.9" - "@smithy/core" "^2.4.8" - "@smithy/fetch-http-handler" "^3.2.9" - "@smithy/hash-node" "^3.0.7" - "@smithy/invalid-dependency" "^3.0.7" - "@smithy/middleware-content-length" "^3.0.9" - "@smithy/middleware-endpoint" "^3.1.4" - "@smithy/middleware-retry" "^3.0.23" - "@smithy/middleware-serde" "^3.0.7" - "@smithy/middleware-stack" "^3.0.7" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/node-http-handler" "^3.2.4" - "@smithy/protocol-http" "^4.1.4" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/url-parser" "^3.0.7" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.23" - "@smithy/util-defaults-mode-node" "^3.0.23" - "@smithy/util-endpoints" "^2.1.3" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-retry" "^3.0.7" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-sso@3.670.0": - version "3.670.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.670.0.tgz" - integrity sha512-J+oz6uSsDvk4pimMDnKJb1wsV216zTrejvMTIL4RhUD1QPIVVOpteTdUShcjZUIZnkcJZGI+cym/SFK0kuzTpg== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/core" "3.667.0" - "@aws-sdk/middleware-host-header" "3.667.0" - "@aws-sdk/middleware-logger" "3.667.0" - "@aws-sdk/middleware-recursion-detection" "3.667.0" - "@aws-sdk/middleware-user-agent" "3.669.0" - "@aws-sdk/region-config-resolver" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@aws-sdk/util-endpoints" "3.667.0" - "@aws-sdk/util-user-agent-browser" "3.670.0" - "@aws-sdk/util-user-agent-node" "3.669.0" - "@smithy/config-resolver" "^3.0.9" - "@smithy/core" "^2.4.8" - "@smithy/fetch-http-handler" "^3.2.9" - "@smithy/hash-node" "^3.0.7" - "@smithy/invalid-dependency" "^3.0.7" - "@smithy/middleware-content-length" "^3.0.9" - "@smithy/middleware-endpoint" "^3.1.4" - "@smithy/middleware-retry" "^3.0.23" - "@smithy/middleware-serde" "^3.0.7" - "@smithy/middleware-stack" "^3.0.7" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/node-http-handler" "^3.2.4" - "@smithy/protocol-http" "^4.1.4" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/url-parser" "^3.0.7" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.23" - "@smithy/util-defaults-mode-node" "^3.0.23" - "@smithy/util-endpoints" "^2.1.3" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-retry" "^3.0.7" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/client-sts@3.670.0": - version "3.670.0" - resolved "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.670.0.tgz" - integrity sha512-bExrNo8ZVWorS3cjMZKQnA2HWqDmAzcZoSN/cPVoPFNkHwdl1lzPxvcLzmhpIr48JHgKfybBjrbluDZfIYeEog== - dependencies: - "@aws-crypto/sha256-browser" "5.2.0" - "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.670.0" - "@aws-sdk/core" "3.667.0" - "@aws-sdk/credential-provider-node" "3.670.0" - "@aws-sdk/middleware-host-header" "3.667.0" - "@aws-sdk/middleware-logger" "3.667.0" - "@aws-sdk/middleware-recursion-detection" "3.667.0" - "@aws-sdk/middleware-user-agent" "3.669.0" - "@aws-sdk/region-config-resolver" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@aws-sdk/util-endpoints" "3.667.0" - "@aws-sdk/util-user-agent-browser" "3.670.0" - "@aws-sdk/util-user-agent-node" "3.669.0" - "@smithy/config-resolver" "^3.0.9" - "@smithy/core" "^2.4.8" - "@smithy/fetch-http-handler" "^3.2.9" - "@smithy/hash-node" "^3.0.7" - "@smithy/invalid-dependency" "^3.0.7" - "@smithy/middleware-content-length" "^3.0.9" - "@smithy/middleware-endpoint" "^3.1.4" - "@smithy/middleware-retry" "^3.0.23" - "@smithy/middleware-serde" "^3.0.7" - "@smithy/middleware-stack" "^3.0.7" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/node-http-handler" "^3.2.4" - "@smithy/protocol-http" "^4.1.4" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/url-parser" "^3.0.7" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-body-length-node" "^3.0.0" - "@smithy/util-defaults-mode-browser" "^3.0.23" - "@smithy/util-defaults-mode-node" "^3.0.23" - "@smithy/util-endpoints" "^2.1.3" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-retry" "^3.0.7" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/core@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/core/-/core-3.667.0.tgz" - integrity sha512-pMcDVI7Tmdsc8R3sDv0Omj/4iRParGY+uJtAfF669WnZfDfaBQaix2Mq7+Mu08vdjqO9K3gicFvjk9S1VLmOKA== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/core" "^2.4.8" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/property-provider" "^3.1.7" - "@smithy/protocol-http" "^4.1.4" - "@smithy/signature-v4" "^4.2.0" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/util-middleware" "^3.0.7" - fast-xml-parser "4.4.1" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-env@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.667.0.tgz" - integrity sha512-zZbrkkaPc54WXm+QAnpuv0LPNfsts0HPPd+oCECGs7IQRaFsGj187cwvPg9RMWDFZqpm64MdBDoA8OQHsqzYCw== - dependencies: - "@aws-sdk/core" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/property-provider" "^3.1.7" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-http@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.667.0.tgz" - integrity sha512-sjtybFfERZWiqTY7fswBxKQLvUkiCucOWyqh3IaPo/4nE1PXRnaZCVG0+kRBPrYIxWqiVwytvZzMJy8sVZcG0A== - dependencies: - "@aws-sdk/core" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/fetch-http-handler" "^3.2.9" - "@smithy/node-http-handler" "^3.2.4" - "@smithy/property-provider" "^3.1.7" - "@smithy/protocol-http" "^4.1.4" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/util-stream" "^3.1.9" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-ini@3.670.0": - version "3.670.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.670.0.tgz" - integrity sha512-TB1gacUj75leaTt2JsCTzygDSIk4ksv9uZoR7VenlgFPRktyOeT+fapwIVBeB2Qg7b9uxAY2K5XkKstDZyBEEw== - dependencies: - "@aws-sdk/core" "3.667.0" - "@aws-sdk/credential-provider-env" "3.667.0" - "@aws-sdk/credential-provider-http" "3.667.0" - "@aws-sdk/credential-provider-process" "3.667.0" - "@aws-sdk/credential-provider-sso" "3.670.0" - "@aws-sdk/credential-provider-web-identity" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/credential-provider-imds" "^3.2.4" - "@smithy/property-provider" "^3.1.7" - "@smithy/shared-ini-file-loader" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-node@3.670.0": - version "3.670.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.670.0.tgz" - integrity sha512-zwNrRYzubk4CaZ7zebeDhxsm8QtNWkbGKopZPOaZSnd5uqUGRcmx4ccVRngWUK68XDP44aEUWC8iU5Pc7btpHQ== - dependencies: - "@aws-sdk/credential-provider-env" "3.667.0" - "@aws-sdk/credential-provider-http" "3.667.0" - "@aws-sdk/credential-provider-ini" "3.670.0" - "@aws-sdk/credential-provider-process" "3.667.0" - "@aws-sdk/credential-provider-sso" "3.670.0" - "@aws-sdk/credential-provider-web-identity" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/credential-provider-imds" "^3.2.4" - "@smithy/property-provider" "^3.1.7" - "@smithy/shared-ini-file-loader" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-process@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.667.0.tgz" - integrity sha512-HZHnvop32fKgsNHkdhVaul7UzQ25sEc0j9yqA4bjhtbk0ECl42kj3f1pJ+ZU/YD9ut8lMJs/vVqiOdNThVdeBw== - dependencies: - "@aws-sdk/core" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/property-provider" "^3.1.7" - "@smithy/shared-ini-file-loader" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-sso@3.670.0": - version "3.670.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.670.0.tgz" - integrity sha512-5PkA8BOy4q57Vhe9AESoHKZ7vjRbElNPKjXA4qC01xY+DitClRFz4O3B9sMzFp0PHlz9nDVSXXKgq0yzF/nAag== - dependencies: - "@aws-sdk/client-sso" "3.670.0" - "@aws-sdk/core" "3.667.0" - "@aws-sdk/token-providers" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/property-provider" "^3.1.7" - "@smithy/shared-ini-file-loader" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/credential-provider-web-identity@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.667.0.tgz" - integrity sha512-t8CFlZMD/1p/8Cli3rvRiTJpjr/8BO64gw166AHgFZYSN2h95L2l1tcW0jpsc3PprA32nLg1iQVKYt4WGM4ugw== - dependencies: - "@aws-sdk/core" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/property-provider" "^3.1.7" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-bucket-endpoint@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.667.0.tgz" - integrity sha512-XGz4jMAkDoTyFdtLz7ZF+C05IAhCTC1PllpvTBaj821z/L0ilhbqVhrT/f2Buw8Id/K5A390csGXgusXyrFFjA== - dependencies: - "@aws-sdk/types" "3.667.0" - "@aws-sdk/util-arn-parser" "3.568.0" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - "@smithy/util-config-provider" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-expect-continue@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.667.0.tgz" - integrity sha512-0TiSL9S5DSG95NHGIz6qTMuV7GDKVn8tvvGSrSSZu/wXO3JaYSH0AElVpYfc4PtPRqVpEyNA7nnc7W56mMCLWQ== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-flexible-checksums@3.669.0": - version "3.669.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.669.0.tgz" - integrity sha512-01UQLoUzVwWMf+b+AEuwJ2lluBD+Cp8AcbyEHqvEaPdjGKHIS4BCvnY70mZYnAfRtL8R2h9tt7iI61oWU3Gjkg== - dependencies: - "@aws-crypto/crc32" "5.2.0" - "@aws-crypto/crc32c" "5.2.0" - "@aws-sdk/core" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@smithy/is-array-buffer" "^3.0.0" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-host-header@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.667.0.tgz" - integrity sha512-Z7fIAMQnPegs7JjAQvlOeWXwpMRfegh5eCoIP6VLJIeR6DLfYKbP35JBtt98R6DXslrN2RsbTogjbxPEDQfw1w== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-location-constraint@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.667.0.tgz" - integrity sha512-ob85H3HhT3/u5O+x0o557xGZ78vSNeSSwMaSitxdsfs2hOuoUl1uk+OeLpi1hkuJnL41FPpokV7TVII2XrFfmg== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-logger@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.667.0.tgz" - integrity sha512-PtTRNpNm/5c746jRgZCNg4X9xEJIwggkGJrF0GP9AB1ANg4pc/sF2Fvn1NtqPe9wtQ2stunJprnm5WkCHN7QiA== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-recursion-detection@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.667.0.tgz" - integrity sha512-U5glWD3ehFohzpUpopLtmqAlDurGWo2wRGPNgi4SwhWU7UDt6LS7E/UvJjqC0CUrjlzOw+my2A+Ncf+fisMhxQ== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-sdk-s3@3.674.0": - version "3.674.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.674.0.tgz" - integrity sha512-IvXnWrKy4mO+I44kLYHd6Wlw+FdB4sg1jvHCmnZo1KNaAFIA3x1iXgOaZynKoBdEmol3xfr2uDbeXUQvIwoIgg== - dependencies: - "@aws-sdk/core" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@aws-sdk/util-arn-parser" "3.568.0" - "@smithy/core" "^2.4.8" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/protocol-http" "^4.1.4" - "@smithy/signature-v4" "^4.2.0" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/util-config-provider" "^3.0.0" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-stream" "^3.1.9" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-ssec@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.667.0.tgz" - integrity sha512-1wuAUZIkmZIvOmGg5qNQU821CGFHhkuKioxXgNh0DpUxZ9+AeiV7yorJr+bqkb2KBFv1i1TnzGRecvKf/KvZIQ== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-user-agent@3.669.0": - version "3.669.0" - resolved "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.669.0.tgz" - integrity sha512-K8ScPi45zjJrj5Y2gRqVsvKKQCQbvQBfYGcBw9ZOx9TTavH80bOCBjWg/GFnvs4f37tqVc1wMN2oGvcTF6HveQ== - dependencies: - "@aws-sdk/core" "3.667.0" - "@aws-sdk/types" "3.667.0" - "@aws-sdk/util-endpoints" "3.667.0" - "@smithy/core" "^2.4.8" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/region-config-resolver@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.667.0.tgz" - integrity sha512-iNr+JhhA902JMKHG9IwT9YdaEx6KGl6vjAL5BRNeOjfj4cZYMog6Lz/IlfOAltMtT0w88DAHDEFrBd2uO0l2eg== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/types" "^3.5.0" - "@smithy/util-config-provider" "^3.0.0" - "@smithy/util-middleware" "^3.0.7" - tslib "^2.6.2" - -"@aws-sdk/signature-v4-multi-region@3.674.0": - version "3.674.0" - resolved "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.674.0.tgz" - integrity sha512-VMQWbtcbg4FV/fILrODADV21pPg9AghuEzQlW2kH0hCtacvBwFl7eBxIiCBLLtkNple+CVPJvyBcqOZdBkEv/w== - dependencies: - "@aws-sdk/middleware-sdk-s3" "3.674.0" - "@aws-sdk/types" "3.667.0" - "@smithy/protocol-http" "^4.1.4" - "@smithy/signature-v4" "^4.2.0" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/token-providers@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.667.0.tgz" - integrity sha512-ZecJlG8p6D4UTYlBHwOWX6nknVtw/OBJ3yPXTSajBjhUlj9lE2xvejI8gl4rqkyLXk7z3bki+KR4tATbMaM9yg== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/property-provider" "^3.1.7" - "@smithy/shared-ini-file-loader" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/types@^3.222.0", "@aws-sdk/types@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/types/-/types-3.667.0.tgz" - integrity sha512-gYq0xCsqFfQaSL/yT1Gl1vIUjtsg7d7RhnUfsXaHt8xTxOKRTdH9GjbesBjXOzgOvB0W0vfssfreSNGFlOOMJg== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/util-arn-parser@3.568.0": - version "3.568.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz" - integrity sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w== - dependencies: - tslib "^2.6.2" - -"@aws-sdk/util-endpoints@3.667.0": - version "3.667.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.667.0.tgz" - integrity sha512-X22SYDAuQJWnkF1/q17pkX3nGw5XMD9YEUbmt87vUnRq7iyJ3JOpl6UKOBeUBaL838wA5yzdbinmCITJ/VZ1QA== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/types" "^3.5.0" - "@smithy/util-endpoints" "^2.1.3" - tslib "^2.6.2" - -"@aws-sdk/util-locate-window@^3.0.0": - version "3.568.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz" - integrity sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig== - dependencies: - tslib "^2.6.2" - -"@aws-sdk/util-user-agent-browser@3.670.0": - version "3.670.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.670.0.tgz" - integrity sha512-iRynWWazqEcCKwGMcQcywKTDLdLvqts1Yx474U64I9OKQXXwhOwhXbF5CAPSRta86lkVNAVYJa/0Bsv45pNn1A== - dependencies: - "@aws-sdk/types" "3.667.0" - "@smithy/types" "^3.5.0" - bowser "^2.11.0" - tslib "^2.6.2" - -"@aws-sdk/util-user-agent-node@3.669.0": - version "3.669.0" - resolved "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.669.0.tgz" - integrity sha512-9jxCYrgggy2xd44ZASqI7AMiRVaSiFp+06Kg8BQSU0ijKpBJlwcsqIS8pDT/n6LxuOw2eV5ipvM2C0r1iKzrGA== - dependencies: - "@aws-sdk/middleware-user-agent" "3.669.0" - "@aws-sdk/types" "3.667.0" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@aws-sdk/xml-builder@3.662.0": - version "3.662.0" - resolved "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.662.0.tgz" - integrity sha512-ikLkXn0igUpnJu2mCZjklvmcDGWT9OaLRv3JyC/cRkTaaSrblPjPM7KKsltxdMTLQ+v7fjCN0TsJpxphMfaOPA== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz" - integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== - dependencies: - "@babel/helper-validator-identifier" "^7.27.1" - js-tokens "^4.0.0" - picocolors "^1.1.1" - -"@babel/code-frame@7.12.11": - version "7.12.11" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" - integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== - dependencies: - "@babel/highlight" "^7.10.4" - -"@babel/compat-data@^7.27.2": - version "7.27.3" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.3.tgz" - integrity sha512-V42wFfx1ymFte+ecf6iXghnnP8kWTO+ZLXIyZq+1LAXHHvTZdVxicn4yiVYdYMGaCO3tmqub11AorKkv+iodqw== - -"@babel/core@^7.26.10", "@babel/core@^7.27.4": - version "7.27.4" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz" - integrity sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.27.3" - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-module-transforms" "^7.27.3" - "@babel/helpers" "^7.27.4" - "@babel/parser" "^7.27.4" - "@babel/template" "^7.27.2" - "@babel/traverse" "^7.27.4" - "@babel/types" "^7.27.3" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/eslint-parser@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.27.1.tgz" - integrity sha512-q8rjOuadH0V6Zo4XLMkJ3RMQ9MSBqwaDByyYB0izsYdaIWGNLmEblbCOf1vyFHICcg16CD7Fsi51vcQnYxmt6Q== - dependencies: - "@nicolo-ribaudo/eslint-scope-5-internals" "5.1.1-v1" - eslint-visitor-keys "^2.1.0" - semver "^6.3.1" - -"@babel/generator@^7.27.3": - version "7.27.3" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.27.3.tgz" - integrity sha512-xnlJYj5zepml8NXtjkG0WquFUv8RskFqyFcVgTBp5k+NaA/8uw/K+OSVf8AMGw5e9HKP2ETd5xpK5MLZQD6b4Q== - dependencies: - "@babel/parser" "^7.27.3" - "@babel/types" "^7.27.3" - "@jridgewell/gen-mapping" "^0.3.5" - "@jridgewell/trace-mapping" "^0.3.25" - jsesc "^3.0.2" - -"@babel/helper-annotate-as-pure@^7.27.1": - version "7.27.3" - resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz" - integrity sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg== - dependencies: - "@babel/types" "^7.27.3" - -"@babel/helper-compilation-targets@^7.27.2": - version "7.27.2" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz" - integrity sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ== - dependencies: - "@babel/compat-data" "^7.27.2" - "@babel/helper-validator-option" "^7.27.1" - browserslist "^4.24.0" - lru-cache "^5.1.1" - semver "^6.3.1" - -"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz" - integrity sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w== - dependencies: - "@babel/traverse" "^7.27.1" - "@babel/types" "^7.27.1" - -"@babel/helper-module-transforms@^7.27.3": - version "7.27.3" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz" - integrity sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg== - dependencies: - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" - "@babel/traverse" "^7.27.3" - -"@babel/helper-plugin-utils@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz" - integrity sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw== - -"@babel/helper-string-parser@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz" - integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== - -"@babel/helper-validator-identifier@^7.25.7", "@babel/helper-validator-identifier@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz" - integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== - -"@babel/helper-validator-option@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz" - integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== - -"@babel/helpers@^7.27.4": - version "7.27.4" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.4.tgz" - integrity sha512-Y+bO6U+I7ZKaM5G5rDUZiYfUvQPUibYmAFe7EnKdnKBbVXDZxvp+MWOH5gYciY0EPk4EScsuFMQBbEfpdRKSCQ== - dependencies: - "@babel/template" "^7.27.2" - "@babel/types" "^7.27.3" - -"@babel/highlight@^7.10.4": - version "7.25.7" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz" - integrity sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw== - dependencies: - "@babel/helper-validator-identifier" "^7.25.7" - chalk "^2.4.2" - js-tokens "^4.0.0" - picocolors "^1.0.0" - -"@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.27.2", "@babel/parser@^7.27.3", "@babel/parser@^7.27.4": - version "7.27.4" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.27.4.tgz" - integrity sha512-BRmLHGwpUqLFR2jzx9orBuX/ABDkj2jLKOXrHDTN2aOKL+jFDDKaRNo9nyYsIl9h/UE/7lMKdDjKQQyxKKDZ7g== - dependencies: - "@babel/types" "^7.27.3" - -"@babel/plugin-syntax-jsx@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz" - integrity sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - -"@babel/plugin-transform-react-display-name@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.27.1.tgz" - integrity sha512-p9+Vl3yuHPmkirRrg021XiP+EETmPMQTLr6Ayjj85RLNEbb3Eya/4VI0vAdzQG9SEAl2Lnt7fy5lZyMzjYoZQQ== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - -"@babel/plugin-transform-react-jsx-development@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz" - integrity sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q== - dependencies: - "@babel/plugin-transform-react-jsx" "^7.27.1" - -"@babel/plugin-transform-react-jsx-self@^7.25.9": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz" - integrity sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - -"@babel/plugin-transform-react-jsx-source@^7.25.9": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz" - integrity sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - -"@babel/plugin-transform-react-jsx@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz" - integrity sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.27.1" - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/plugin-syntax-jsx" "^7.27.1" - "@babel/types" "^7.27.1" - -"@babel/plugin-transform-react-pure-annotations@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz" - integrity sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" - -"@babel/preset-react@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.27.1.tgz" - integrity sha512-oJHWh2gLhU9dW9HHr42q0cI0/iHHXTLGe39qvpAZZzagHy0MzYLCnCVV0symeRvzmjHyVU7mw2K06E6u/JwbhA== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-validator-option" "^7.27.1" - "@babel/plugin-transform-react-display-name" "^7.27.1" - "@babel/plugin-transform-react-jsx" "^7.27.1" - "@babel/plugin-transform-react-jsx-development" "^7.27.1" - "@babel/plugin-transform-react-pure-annotations" "^7.27.1" - -"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.23.2", "@babel/runtime@^7.23.9", "@babel/runtime@^7.3.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.3", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2": - version "7.23.9" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz" - integrity sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw== - dependencies: - regenerator-runtime "^0.14.0" - -"@babel/template@^7.27.2": - version "7.27.2" - resolved "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz" - integrity sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/parser" "^7.27.2" - "@babel/types" "^7.27.1" - -"@babel/traverse@^7.27.1", "@babel/traverse@^7.27.3", "@babel/traverse@^7.27.4": - version "7.27.4" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.4.tgz" - integrity sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.27.3" - "@babel/parser" "^7.27.4" - "@babel/template" "^7.27.2" - "@babel/types" "^7.27.3" - debug "^4.3.1" - globals "^11.1.0" - -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.27.1", "@babel/types@^7.27.3": - version "7.27.3" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.27.3.tgz" - integrity sha512-Y1GkI4ktrtvmawoSq+4FCVHNryea6uR+qUQy0AGxLSsjCX0nVmkYQMBLHDkXZuo5hGx7eYdnIaslsdBFm7zbUw== - dependencies: - "@babel/helper-string-parser" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" - -"@cspotcode/source-map-support@^0.8.0": - version "0.8.1" - resolved "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz" - integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== - dependencies: - "@jridgewell/trace-mapping" "0.3.9" - -"@digitalbazaar/http-client@^1.1.0": - version "1.2.0" - resolved "https://registry.npmjs.org/@digitalbazaar/http-client/-/http-client-1.2.0.tgz" - integrity sha512-W9KQQ5pUJcaR0I4c2HPJC0a7kRbZApIorZgPnEDwMBgj16iQzutGLrCXYaZOmxqVLVNqqlQ4aUJh+HBQZy4W6Q== - dependencies: - esm "^3.2.22" - ky "^0.25.1" - ky-universal "^0.8.2" - -"@emotion/babel-plugin@^11.11.0": - version "11.11.0" - resolved "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz" - integrity sha512-m4HEDZleaaCH+XgDDsPF15Ht6wTLsgDTeR3WYj9Q/k76JtWhrJjcP4+/XlG8LGT/Rol9qUfOIztXeA84ATpqPQ== - dependencies: - "@babel/helper-module-imports" "^7.16.7" - "@babel/runtime" "^7.18.3" - "@emotion/hash" "^0.9.1" - "@emotion/memoize" "^0.8.1" - "@emotion/serialize" "^1.1.2" - babel-plugin-macros "^3.1.0" - convert-source-map "^1.5.0" - escape-string-regexp "^4.0.0" - find-root "^1.1.0" - source-map "^0.5.7" - stylis "4.2.0" - -"@emotion/cache@^11.11.0": - version "11.11.0" - resolved "https://registry.npmjs.org/@emotion/cache/-/cache-11.11.0.tgz" - integrity sha512-P34z9ssTCBi3e9EI1ZsWpNHcfY1r09ZO0rZbRO2ob3ZQMnFI35jB536qoXbkdesr5EUhYi22anuEJuyxifaqAQ== - dependencies: - "@emotion/memoize" "^0.8.1" - "@emotion/sheet" "^1.2.2" - "@emotion/utils" "^1.2.1" - "@emotion/weak-memoize" "^0.3.1" - stylis "4.2.0" - -"@emotion/hash@^0.9.1": - version "0.9.1" - resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.1.tgz" - integrity sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ== - -"@emotion/is-prop-valid@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz" - integrity sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw== - dependencies: - "@emotion/memoize" "^0.8.1" - -"@emotion/memoize@^0.8.1": - version "0.8.1" - resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz" - integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA== - -"@emotion/react@^11.7.0": - version "11.11.3" - resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.3.tgz" - integrity sha512-Cnn0kuq4DoONOMcnoVsTOR8E+AdnKFf//6kUWc4LCdnxj31pZWn7rIULd6Y7/Js1PiPHzn7SKCM9vB/jBni8eA== - dependencies: - "@babel/runtime" "^7.18.3" - "@emotion/babel-plugin" "^11.11.0" - "@emotion/cache" "^11.11.0" - "@emotion/serialize" "^1.1.3" - "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" - "@emotion/utils" "^1.2.1" - "@emotion/weak-memoize" "^0.3.1" - hoist-non-react-statics "^3.3.1" - -"@emotion/serialize@^1.1.2", "@emotion/serialize@^1.1.3": - version "1.1.3" - resolved "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.1.3.tgz" - integrity sha512-iD4D6QVZFDhcbH0RAG1uVu1CwVLMWUkCvAqqlewO/rxf8+87yIBAlt4+AxMiiKPLs5hFc0owNk/sLLAOROw3cA== - dependencies: - "@emotion/hash" "^0.9.1" - "@emotion/memoize" "^0.8.1" - "@emotion/unitless" "^0.8.1" - "@emotion/utils" "^1.2.1" - csstype "^3.0.2" - -"@emotion/sheet@^1.2.2": - version "1.2.2" - resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz" - integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA== - -"@emotion/styled@^11.6.0": - version "11.11.0" - resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz" - integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng== - dependencies: - "@babel/runtime" "^7.18.3" - "@emotion/babel-plugin" "^11.11.0" - "@emotion/is-prop-valid" "^1.2.1" - "@emotion/serialize" "^1.1.2" - "@emotion/use-insertion-effect-with-fallbacks" "^1.0.1" - "@emotion/utils" "^1.2.1" - -"@emotion/unitless@^0.8.1": - version "0.8.1" - resolved "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.1.tgz" - integrity sha512-KOEGMu6dmJZtpadb476IsZBclKvILjopjUii3V+7MnXIQCYh8W3NgNcgwo21n9LXZX6EDIKvqfjYxXebDwxKmQ== - -"@emotion/use-insertion-effect-with-fallbacks@^1.0.1": - version "1.0.1" - resolved "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz" - integrity sha512-jT/qyKZ9rzLErtrjGgdkMBn2OP8wl0G3sQlBb3YPryvKHsjvINUhVaPFfP+fpBcOkmrVOVEEHQFJ7nbj2TH2gw== - -"@emotion/utils@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@emotion/utils/-/utils-1.2.1.tgz" - integrity sha512-Y2tGf3I+XVnajdItskUCn6LX+VUDmP6lTL4fcqsXAv43dnlbZiuW4MWQW38rW/BVWSE7Q/7+XQocmpnRYILUmg== - -"@emotion/weak-memoize@^0.3.1": - version "0.3.1" - resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz" - integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww== - -"@esbuild/win32-x64@0.25.5": - version "0.25.5" - resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.5.tgz" - integrity sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g== - -"@eslint/eslintrc@^0.4.3": - version "0.4.3" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz" - integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== - dependencies: - ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" - globals "^13.9.0" - ignore "^4.0.6" - import-fresh "^3.2.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" - strip-json-comments "^3.1.1" - -"@fingerprintjs/fingerprintjs@^4.2.2": - version "4.2.2" - resolved "https://registry.npmjs.org/@fingerprintjs/fingerprintjs/-/fingerprintjs-4.2.2.tgz" - integrity sha512-scD+pDgNZW78LuFAr7ms2yxmDx2NWC4+K5iiOjPT2ZlTlHFbLsORUzLJI2rcKicxxLtHbvf3A7BU1drVr4iHGg== - dependencies: - tslib "^2.4.1" - -"@floating-ui/core@^1.6.0": - version "1.6.0" - resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.0.tgz" - integrity sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g== - dependencies: - "@floating-ui/utils" "^0.2.1" - -"@floating-ui/dom@^1.6.1": - version "1.6.1" - resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.1.tgz" - integrity sha512-iA8qE43/H5iGozC3W0YSnVSW42Vh522yyM1gj+BqRwVsTNOyr231PsXDaV04yT39PsO0QL2QpbI/M0ZaLUQgRQ== - dependencies: - "@floating-ui/core" "^1.6.0" - "@floating-ui/utils" "^0.2.1" - -"@floating-ui/react-dom@^2.0.8": - version "2.0.8" - resolved "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.8.tgz" - integrity sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw== - dependencies: - "@floating-ui/dom" "^1.6.1" - -"@floating-ui/utils@^0.2.1": - version "0.2.1" - resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz" - integrity sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q== - -"@gilbarbara/deep-equal@^0.1.1": - version "0.1.2" - resolved "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.1.2.tgz" - integrity sha512-jk+qzItoEb0D0xSSmrKDDzf9sheQj/BAPxlgNxgmOaA3mxpUa6ndJLYGZKsJnIVEQSD8zcTbyILz7I0HcnBCRA== - -"@gilbarbara/deep-equal@^0.3.1": - version "0.3.1" - resolved "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.3.1.tgz" - integrity sha512-I7xWjLs2YSVMc5gGx1Z3ZG1lgFpITPndpi8Ku55GeEIKpACCPQNS/OTqQbxgTCfq0Ncvcc+CrFov96itVh6Qvw== - -"@humanwhocodes/config-array@^0.5.0": - version "0.5.0" - resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz" - integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== - dependencies: - "@humanwhocodes/object-schema" "^1.2.0" - debug "^4.1.1" - minimatch "^3.0.4" - -"@humanwhocodes/object-schema@^1.2.0": - version "1.2.1" - resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" - integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== - -"@jest/expect-utils@^29.4.3": - version "29.4.3" - resolved "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.4.3.tgz" - integrity sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ== - dependencies: - jest-get-type "^29.4.3" - -"@jest/schemas@^29.4.3": - version "29.4.3" - resolved "https://registry.npmjs.org/@jest/schemas/-/schemas-29.4.3.tgz" - integrity sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg== - dependencies: - "@sinclair/typebox" "^0.25.16" - -"@jest/types@^29.4.3": - version "29.4.3" - resolved "https://registry.npmjs.org/@jest/types/-/types-29.4.3.tgz" - integrity sha512-bPYfw8V65v17m2Od1cv44FH+SiKW7w2Xu7trhcdTLUmSv85rfKsP+qXSjO4KGJr4dtPSzl/gvslZBXctf1qGEA== - dependencies: - "@jest/schemas" "^29.4.3" - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^17.0.8" - chalk "^4.0.0" - -"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.5": - version "0.3.5" - resolved "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz" - integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== - dependencies: - "@jridgewell/set-array" "^1.2.1" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping" "^0.3.24" - -"@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": - version "3.1.1" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz" - integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== - -"@jridgewell/set-array@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz" - integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== - -"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": - version "1.4.15" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz" - integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== - -"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25", "@jridgewell/trace-mapping@^0.3.9": - version "0.3.25" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz" - integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - -"@jridgewell/trace-mapping@0.3.9": - version "0.3.9" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" - integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== - dependencies: - "@jridgewell/resolve-uri" "^3.0.3" - "@jridgewell/sourcemap-codec" "^1.4.10" - -"@mui/base@5.0.0-beta.34": - version "5.0.0-beta.34" - resolved "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.34.tgz" - integrity sha512-e2mbTGTtReD/y5RFwnhkl1Tgl3XwgJhY040IlfkTVaU9f5LWrVhEnpRsYXu3B1CtLrwiWs4cu7aMHV9yRd4jpw== - dependencies: - "@babel/runtime" "^7.23.9" - "@floating-ui/react-dom" "^2.0.8" - "@mui/types" "^7.2.13" - "@mui/utils" "^5.15.7" - "@popperjs/core" "^2.11.8" - clsx "^2.1.0" - prop-types "^15.8.1" - -"@mui/core-downloads-tracker@^5.15.7": - version "5.15.7" - resolved "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.15.7.tgz" - integrity sha512-AuF+Wo2Mp/edaO6vJnWjg+gj4tzEz5ChMZnAQpc22DXpSvM8ddgGcZvM7D7F99pIBoSv8ub+Iz0viL+yuGVmhg== - -"@mui/icons-material@^5.2.5": - version "5.15.7" - resolved "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.15.7.tgz" - integrity sha512-EDAc8TVJGIA/imAvR3u4nANl2W5h3QeHieu2gK7Ypez/nIA55p08tHjf8UrMXEpxCAvfZO6piY9S9uaxETdicA== - dependencies: - "@babel/runtime" "^7.23.9" - -"@mui/material@^5.2.2": - version "5.15.7" - resolved "https://registry.npmjs.org/@mui/material/-/material-5.15.7.tgz" - integrity sha512-l6+AiKZH3iOJmZCnlpel8ghYQe9Lq0BEuKP8fGj3g5xz4arO9GydqYAtLPMvuHKtArj8lJGNuT2yHYxmejincA== - dependencies: - "@babel/runtime" "^7.23.9" - "@mui/base" "5.0.0-beta.34" - "@mui/core-downloads-tracker" "^5.15.7" - "@mui/system" "^5.15.7" - "@mui/types" "^7.2.13" - "@mui/utils" "^5.15.7" - "@types/react-transition-group" "^4.4.10" - clsx "^2.1.0" - csstype "^3.1.2" - prop-types "^15.8.1" - react-is "^18.2.0" - react-transition-group "^4.4.5" - -"@mui/private-theming@^5.15.7", "@mui/private-theming@^5.16.6": - version "5.16.6" - resolved "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.6.tgz" - integrity sha512-rAk+Rh8Clg7Cd7shZhyt2HGTTE5wYKNSJ5sspf28Fqm/PZ69Er9o6KX25g03/FG2dfpg5GCwZh/xOojiTfm3hw== - dependencies: - "@babel/runtime" "^7.23.9" - "@mui/utils" "^5.16.6" - prop-types "^15.8.1" - -"@mui/styled-engine@^5.15.7": - version "5.15.7" - resolved "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.15.7.tgz" - integrity sha512-ixSdslOjK1kzdGcxqj7O3d14By/LPQ7EWknsViQ8RaeT863EAQemS+zvUJDTcOpkfJh6q6gPnYMIb2TJCs9eWA== - dependencies: - "@babel/runtime" "^7.23.9" - "@emotion/cache" "^11.11.0" - csstype "^3.1.2" - prop-types "^15.8.1" - -"@mui/styles@^5.15.10": - version "5.16.7" - resolved "https://registry.npmjs.org/@mui/styles/-/styles-5.16.7.tgz" - integrity sha512-FfXhHP/2MlqH+vLs2tIHMeCChmqSRgkOALVNLKkPrDsvtoq5J8OraOutCn1scpvRjr9mO8ZhW6jKx2t/vUDxtQ== - dependencies: - "@babel/runtime" "^7.23.9" - "@emotion/hash" "^0.9.1" - "@mui/private-theming" "^5.16.6" - "@mui/types" "^7.2.15" - "@mui/utils" "^5.16.6" - clsx "^2.1.0" - csstype "^3.1.3" - hoist-non-react-statics "^3.3.2" - jss "^10.10.0" - jss-plugin-camel-case "^10.10.0" - jss-plugin-default-unit "^10.10.0" - jss-plugin-global "^10.10.0" - jss-plugin-nested "^10.10.0" - jss-plugin-props-sort "^10.10.0" - jss-plugin-rule-value-function "^10.10.0" - jss-plugin-vendor-prefixer "^10.10.0" - prop-types "^15.8.1" - -"@mui/system@^5.15.7": - version "5.15.7" - resolved "https://registry.npmjs.org/@mui/system/-/system-5.15.7.tgz" - integrity sha512-9alZ4/dLxsTwUOdqakgzxiL5YW6ntqj0CfzWImgWnBMTZhgGcPsbYpBLniNkkk7/jptma4/bykWXHwju/ls/pg== - dependencies: - "@babel/runtime" "^7.23.9" - "@mui/private-theming" "^5.15.7" - "@mui/styled-engine" "^5.15.7" - "@mui/types" "^7.2.13" - "@mui/utils" "^5.15.7" - clsx "^2.1.0" - csstype "^3.1.2" - prop-types "^15.8.1" - -"@mui/types@^7.2.13", "@mui/types@^7.2.15": - version "7.2.18" - resolved "https://registry.npmjs.org/@mui/types/-/types-7.2.18.tgz" - integrity sha512-uvK9dWeyCJl/3ocVnTOS6nlji/Knj8/tVqVX03UVTpdmTJYu/s4jtDd9Kvv0nRGE0CUSNW1UYAci7PYypjealg== - -"@mui/utils@^5.15.7", "@mui/utils@^5.16.6": - version "5.16.6" - resolved "https://registry.npmjs.org/@mui/utils/-/utils-5.16.6.tgz" - integrity sha512-tWiQqlhxAt3KENNiSRL+DIn9H5xNVK6Jjf70x3PnfQPz1MPBdh7yyIcAyVBT9xiw7hP3SomRhPR7hzBMBCjqEA== - dependencies: - "@babel/runtime" "^7.23.9" - "@mui/types" "^7.2.15" - "@types/prop-types" "^15.7.12" - clsx "^2.1.1" - prop-types "^15.8.1" - react-is "^18.3.1" - -"@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1": - version "5.1.1-v1" - resolved "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz" - integrity sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg== - dependencies: - eslint-scope "5.1.1" - -"@popperjs/core@^2.11.8": - version "2.11.8" - resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz" - integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== - -"@project-sunbird/client-services@^5.1.2": - version "5.1.2" - resolved "https://registry.npmjs.org/@project-sunbird/client-services/-/client-services-5.1.2.tgz" - integrity sha512-E2xvnYrenDIyyIMFYLy3xnsWQ0yG46eGEUFXUwmaL5BJK7qsjOU4zHHMqAhQYjEEJTZ9iDhLgcRsjf8oL8RhRQ== - dependencies: - "@project-sunbird/telemetry-sdk" "0.0.26" - dayjs "^1.8.20" - inversify "^5.0.1" - jsonld "^5.2.0" - jsonld-signatures "^6.0.0" - jszip "^3.7.1" - node-fetch "2.6.5" - qs "^6.9.7" - reflect-metadata "^0.1.13" - whatwg-fetch "^3.1.0" - -"@project-sunbird/telemetry-sdk@0.0.26": - version "0.0.26" - resolved "https://registry.npmjs.org/@project-sunbird/telemetry-sdk/-/telemetry-sdk-0.0.26.tgz" - integrity sha512-8r8tf+YN+z8A4KHBmL8/wxDIKGkASDHMMxyhlI9/iWv83sueoN5qHB6QnqgtIRyEdFjt4Tum5u18/oB71Bb0PQ== - dependencies: - grunt-karma "^0.12.2" - karma "^3.0.0" - -"@redux-saga/core@^1.3.0": - version "1.3.0" - resolved "https://registry.npmjs.org/@redux-saga/core/-/core-1.3.0.tgz" - integrity sha512-L+i+qIGuyWn7CIg7k1MteHGfttKPmxwZR5E7OsGikCL2LzYA0RERlaUY00Y3P3ZV2EYgrsYlBrGs6cJP5OKKqA== - dependencies: - "@babel/runtime" "^7.6.3" - "@redux-saga/deferred" "^1.2.1" - "@redux-saga/delay-p" "^1.2.1" - "@redux-saga/is" "^1.1.3" - "@redux-saga/symbols" "^1.1.3" - "@redux-saga/types" "^1.2.1" - typescript-tuple "^2.2.1" - -"@redux-saga/deferred@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.2.1.tgz" - integrity sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g== - -"@redux-saga/delay-p@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.2.1.tgz" - integrity sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w== - dependencies: - "@redux-saga/symbols" "^1.1.3" - -"@redux-saga/is@^1.1.3": - version "1.1.3" - resolved "https://registry.npmjs.org/@redux-saga/is/-/is-1.1.3.tgz" - integrity sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q== - dependencies: - "@redux-saga/symbols" "^1.1.3" - "@redux-saga/types" "^1.2.1" - -"@redux-saga/symbols@^1.1.3": - version "1.1.3" - resolved "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.1.3.tgz" - integrity sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg== - -"@redux-saga/types@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@redux-saga/types/-/types-1.2.1.tgz" - integrity sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA== - -"@reduxjs/toolkit@^2.2.0": - version "2.3.0" - resolved "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-2.3.0.tgz" - integrity sha512-WC7Yd6cNGfHx8zf+iu+Q1UPTfEcXhQ+ATi7CV1hlrSAaQBdlPzg7Ww/wJHNQem7qG9rxmWoFCDCPubSvFObGzA== - dependencies: - immer "^10.0.3" - redux "^5.0.1" - redux-thunk "^3.1.0" - reselect "^5.1.0" - -"@remix-run/router@1.3.2": - version "1.3.2" - resolved "https://registry.npmjs.org/@remix-run/router/-/router-1.3.2.tgz" - integrity sha512-t54ONhl/h75X94SWsHGQ4G/ZrCEguKSRQr7DrjTciJXW0YU1QhlwYeycvK5JgkzlxmvrK7wq1NB/PLtHxoiDcA== - -"@rolldown/pluginutils@1.0.0-beta.9": - version "1.0.0-beta.9" - resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.9.tgz" - integrity sha512-e9MeMtVWo186sgvFFJOPGy7/d2j2mZhLJIdVW0C/xDluuOvymEATqz6zKsP0ZmXGzQtqlyjz5sC1sYQUoJG98w== - -"@rollup/rollup-win32-x64-msvc@4.41.1": - version "4.41.1" - resolved "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.41.1.tgz" - integrity sha512-Wq2zpapRYLfi4aKxf2Xff0tN+7slj2d4R87WEzqw7ZLsVvO5zwYCIuEGSZYiK41+GlwUo1HiR+GdkLEJnCKTCw== - -"@sinclair/typebox@^0.25.16": - version "0.25.24" - resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.24.tgz" - integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== - -"@smithy/abort-controller@^3.1.5": - version "3.1.5" - resolved "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.5.tgz" - integrity sha512-DhNPnqTqPoG8aZ5dWkFOgsuY+i0GQ3CI6hMmvCoduNsnU9gUZWZBwGfDQsTTB7NvFPkom1df7jMIJWU90kuXXg== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/chunked-blob-reader-native@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz" - integrity sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg== - dependencies: - "@smithy/util-base64" "^3.0.0" - tslib "^2.6.2" - -"@smithy/chunked-blob-reader@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz" - integrity sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA== - dependencies: - tslib "^2.6.2" - -"@smithy/config-resolver@^3.0.9": - version "3.0.9" - resolved "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.9.tgz" - integrity sha512-5d9oBf40qC7n2xUoHmntKLdqsyTMMo/r49+eqSIjJ73eDfEtljAxEhzIQ3bkgXJtR3xiv7YzMT/3FF3ORkjWdg== - dependencies: - "@smithy/node-config-provider" "^3.1.8" - "@smithy/types" "^3.5.0" - "@smithy/util-config-provider" "^3.0.0" - "@smithy/util-middleware" "^3.0.7" - tslib "^2.6.2" - -"@smithy/core@^2.4.8": - version "2.4.8" - resolved "https://registry.npmjs.org/@smithy/core/-/core-2.4.8.tgz" - integrity sha512-x4qWk7p/a4dcf7Vxb2MODIf4OIcqNbK182WxRvZ/3oKPrf/6Fdic5sSElhO1UtXpWKBazWfqg0ZEK9xN1DsuHA== - dependencies: - "@smithy/middleware-endpoint" "^3.1.4" - "@smithy/middleware-retry" "^3.0.23" - "@smithy/middleware-serde" "^3.0.7" - "@smithy/protocol-http" "^4.1.4" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/util-body-length-browser" "^3.0.0" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@smithy/credential-provider-imds@^3.2.4": - version "3.2.4" - resolved "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.4.tgz" - integrity sha512-S9bb0EIokfYEuar4kEbLta+ivlKCWOCFsLZuilkNy9i0uEUEHSi47IFLPaxqqCl+0ftKmcOTHayY5nQhAuq7+w== - dependencies: - "@smithy/node-config-provider" "^3.1.8" - "@smithy/property-provider" "^3.1.7" - "@smithy/types" "^3.5.0" - "@smithy/url-parser" "^3.0.7" - tslib "^2.6.2" - -"@smithy/eventstream-codec@^3.1.6": - version "3.1.6" - resolved "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.6.tgz" - integrity sha512-SBiOYPBH+5wOyPS7lfI150ePfGLhnp/eTu5RnV9xvhGvRiKfnl6HzRK9wehBph+il8FxS9KTeadx7Rcmf1GLPQ== - dependencies: - "@aws-crypto/crc32" "5.2.0" - "@smithy/types" "^3.5.0" - "@smithy/util-hex-encoding" "^3.0.0" - tslib "^2.6.2" - -"@smithy/eventstream-serde-browser@^3.0.10": - version "3.0.10" - resolved "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.10.tgz" - integrity sha512-1i9aMY6Pl/SmA6NjvidxnfBLHMPzhKu2BP148pEt5VwhMdmXn36PE2kWKGa9Hj8b0XGtCTRucpCncylevCtI7g== - dependencies: - "@smithy/eventstream-serde-universal" "^3.0.9" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/eventstream-serde-config-resolver@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.7.tgz" - integrity sha512-eVzhGQBPEqXXYHvIUku0jMTxd4gDvenRzUQPTmKVWdRvp9JUCKrbAXGQRYiGxUYq9+cqQckRm0wq3kTWnNtDhw== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/eventstream-serde-node@^3.0.9": - version "3.0.9" - resolved "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.9.tgz" - integrity sha512-JE0Guqvt0xsmfQ5y1EI342/qtJqznBv8cJqkHZV10PwC8GWGU5KNgFbQnsVCcX+xF+qIqwwfRmeWoJCjuOLmng== - dependencies: - "@smithy/eventstream-serde-universal" "^3.0.9" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/eventstream-serde-universal@^3.0.9": - version "3.0.9" - resolved "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.9.tgz" - integrity sha512-bydfgSisfepCufw9kCEnWRxqxJFzX/o8ysXWv+W9F2FIyiaEwZ/D8bBKINbh4ONz3i05QJ1xE7A5OKYvgJsXaw== - dependencies: - "@smithy/eventstream-codec" "^3.1.6" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/fetch-http-handler@^3.2.9": - version "3.2.9" - resolved "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.9.tgz" - integrity sha512-hYNVQOqhFQ6vOpenifFME546f0GfJn2OiQ3M0FDmuUu8V/Uiwy2wej7ZXxFBNqdx0R5DZAqWM1l6VRhGz8oE6A== - dependencies: - "@smithy/protocol-http" "^4.1.4" - "@smithy/querystring-builder" "^3.0.7" - "@smithy/types" "^3.5.0" - "@smithy/util-base64" "^3.0.0" - tslib "^2.6.2" - -"@smithy/hash-blob-browser@^3.1.6": - version "3.1.6" - resolved "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.6.tgz" - integrity sha512-BKNcMIaeZ9lB67sgo88iCF4YB35KT8X2dNJ8DqrtZNTgN6tUDYBKThzfGtos/mnZkGkW91AYHisESHmSiYQmKw== - dependencies: - "@smithy/chunked-blob-reader" "^3.0.0" - "@smithy/chunked-blob-reader-native" "^3.0.0" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/hash-node@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.7.tgz" - integrity sha512-SAGHN+QkrwcHFjfWzs/czX94ZEjPJ0CrWJS3M43WswDXVEuP4AVy9gJ3+AF6JQHZD13bojmuf/Ap/ItDeZ+Qfw== - dependencies: - "@smithy/types" "^3.5.0" - "@smithy/util-buffer-from" "^3.0.0" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@smithy/hash-stream-node@^3.1.6": - version "3.1.6" - resolved "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.6.tgz" - integrity sha512-sFSSt7cmCpFWZPfVx7k80Bgb1K2VJ27VmMxH8X+dDhp7Wv8IBgID4K2VK5ehMJROF8hQgcj4WywnkHIwX/xlwQ== - dependencies: - "@smithy/types" "^3.5.0" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@smithy/invalid-dependency@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.7.tgz" - integrity sha512-Bq00GsAhHeYSuZX8Kpu4sbI9agH2BNYnqUmmbTGWOhki9NVsWn2jFr896vvoTMH8KAjNX/ErC/8t5QHuEXG+IA== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/is-array-buffer@^2.2.0": - version "2.2.0" - resolved "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz" - integrity sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA== - dependencies: - tslib "^2.6.2" - -"@smithy/is-array-buffer@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz" - integrity sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ== - dependencies: - tslib "^2.6.2" - -"@smithy/md5-js@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.7.tgz" - integrity sha512-+wco9IN9uOW4tNGkZIqTR6IXyfO7Z8A+IOq82QCRn/f/xcmt7H1fXwmQVbfDSvbeFwfNnhv7s+u0G9PzPG6o2w== - dependencies: - "@smithy/types" "^3.5.0" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@smithy/middleware-content-length@^3.0.9": - version "3.0.9" - resolved "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.9.tgz" - integrity sha512-t97PidoGElF9hTtLCrof32wfWMqC5g2SEJNxaVH3NjlatuNGsdxXRYO/t+RPnxA15RpYiS0f+zG7FuE2DeGgjA== - dependencies: - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/middleware-endpoint@^3.1.4": - version "3.1.4" - resolved "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.4.tgz" - integrity sha512-/ChcVHekAyzUbyPRI8CzPPLj6y8QRAfJngWcLMgsWxKVzw/RzBV69mSOzJYDD3pRwushA1+5tHtPF8fjmzBnrQ== - dependencies: - "@smithy/middleware-serde" "^3.0.7" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/shared-ini-file-loader" "^3.1.8" - "@smithy/types" "^3.5.0" - "@smithy/url-parser" "^3.0.7" - "@smithy/util-middleware" "^3.0.7" - tslib "^2.6.2" - -"@smithy/middleware-retry@^3.0.23": - version "3.0.23" - resolved "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.23.tgz" - integrity sha512-x9PbGXxkcXIpm6L26qRSCC+eaYcHwybRmqU8LO/WM2RRlW0g8lz6FIiKbKgGvHuoK3dLZRiQVSQJveiCzwnA5A== - dependencies: - "@smithy/node-config-provider" "^3.1.8" - "@smithy/protocol-http" "^4.1.4" - "@smithy/service-error-classification" "^3.0.7" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-retry" "^3.0.7" - tslib "^2.6.2" - uuid "^9.0.1" - -"@smithy/middleware-serde@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.7.tgz" - integrity sha512-VytaagsQqtH2OugzVTq4qvjkLNbWehHfGcGr0JLJmlDRrNCeZoWkWsSOw1nhS/4hyUUWF/TLGGml4X/OnEep5g== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/middleware-stack@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.7.tgz" - integrity sha512-EyTbMCdqS1DoeQsO4gI7z2Gzq1MoRFAeS8GkFYIwbedB7Lp5zlLHJdg+56tllIIG5Hnf9ZWX48YKSHlsKvugGA== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/node-config-provider@^3.1.8": - version "3.1.8" - resolved "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.8.tgz" - integrity sha512-E0rU0DglpeJn5ge64mk8wTGEXcQwmpUTY5Zr7IzTpDLmHKiIamINERNZYrPQjg58Ck236sEKSwRSHA4CwshU6Q== - dependencies: - "@smithy/property-provider" "^3.1.7" - "@smithy/shared-ini-file-loader" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/node-http-handler@^3.2.4": - version "3.2.4" - resolved "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.2.4.tgz" - integrity sha512-49reY3+JgLMFNm7uTAKBWiKCA6XSvkNp9FqhVmusm2jpVnHORYFeFZ704LShtqWfjZW/nhX+7Iexyb6zQfXYIQ== - dependencies: - "@smithy/abort-controller" "^3.1.5" - "@smithy/protocol-http" "^4.1.4" - "@smithy/querystring-builder" "^3.0.7" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/property-provider@^3.1.7": - version "3.1.7" - resolved "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.7.tgz" - integrity sha512-QfzLi1GPMisY7bAM5hOUqBdGYnY5S2JAlr201pghksrQv139f8iiiMalXtjczIP5f6owxFn3MINLNUNvUkgtPw== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/protocol-http@^4.1.4": - version "4.1.4" - resolved "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.4.tgz" - integrity sha512-MlWK8eqj0JlpZBnWmjQLqmFp71Ug00P+m72/1xQB3YByXD4zZ+y9N4hYrR0EDmrUCZIkyATWHOXFgtavwGDTzQ== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/querystring-builder@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.7.tgz" - integrity sha512-65RXGZZ20rzqqxTsChdqSpbhA6tdt5IFNgG6o7e1lnPVLCe6TNWQq4rTl4N87hTDD8mV4IxJJnvyE7brbnRkQw== - dependencies: - "@smithy/types" "^3.5.0" - "@smithy/util-uri-escape" "^3.0.0" - tslib "^2.6.2" - -"@smithy/querystring-parser@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.7.tgz" - integrity sha512-Fouw4KJVWqqUVIu1gZW8BH2HakwLz6dvdrAhXeXfeymOBrZw+hcqaWs+cS1AZPVp4nlbeIujYrKA921ZW2WMPA== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/service-error-classification@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.7.tgz" - integrity sha512-91PRkTfiBf9hxkIchhRKJfl1rsplRDyBnmyFca3y0Z3x/q0JJN480S83LBd8R6sBCkm2bBbqw2FHp0Mbh+ecSA== - dependencies: - "@smithy/types" "^3.5.0" - -"@smithy/shared-ini-file-loader@^3.1.8": - version "3.1.8" - resolved "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.8.tgz" - integrity sha512-0NHdQiSkeGl0ICQKcJQ2lCOKH23Nb0EaAa7RDRId6ZqwXkw4LJyIyZ0t3iusD4bnKYDPLGy2/5e2rfUhrt0Acw== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/signature-v4@^4.2.0": - version "4.2.0" - resolved "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.2.0.tgz" - integrity sha512-LafbclHNKnsorMgUkKm7Tk7oJ7xizsZ1VwqhGKqoCIrXh4fqDDp73fK99HOEEgcsQbtemmeY/BPv0vTVYYUNEQ== - dependencies: - "@smithy/is-array-buffer" "^3.0.0" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - "@smithy/util-hex-encoding" "^3.0.0" - "@smithy/util-middleware" "^3.0.7" - "@smithy/util-uri-escape" "^3.0.0" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@smithy/smithy-client@^3.4.0": - version "3.4.0" - resolved "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.4.0.tgz" - integrity sha512-nOfJ1nVQsxiP6srKt43r2My0Gp5PLWCW2ASqUioxIiGmu6d32v4Nekidiv5qOmmtzIrmaD+ADX5SKHUuhReeBQ== - dependencies: - "@smithy/middleware-endpoint" "^3.1.4" - "@smithy/middleware-stack" "^3.0.7" - "@smithy/protocol-http" "^4.1.4" - "@smithy/types" "^3.5.0" - "@smithy/util-stream" "^3.1.9" - tslib "^2.6.2" - -"@smithy/types@^3.5.0": - version "3.5.0" - resolved "https://registry.npmjs.org/@smithy/types/-/types-3.5.0.tgz" - integrity sha512-QN0twHNfe8mNJdH9unwsCK13GURU7oEAZqkBI+rsvpv1jrmserO+WnLE7jidR9W/1dxwZ0u/CB01mV2Gms/K2Q== - dependencies: - tslib "^2.6.2" - -"@smithy/url-parser@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.7.tgz" - integrity sha512-70UbSSR8J97c1rHZOWhl+VKiZDqHWxs/iW8ZHrHp5fCCPLSBE7GcUlUvKSle3Ca+J9LLbYCj/A79BxztBvAfpA== - dependencies: - "@smithy/querystring-parser" "^3.0.7" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/util-base64@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz" - integrity sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ== - dependencies: - "@smithy/util-buffer-from" "^3.0.0" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@smithy/util-body-length-browser@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz" - integrity sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ== - dependencies: - tslib "^2.6.2" - -"@smithy/util-body-length-node@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz" - integrity sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA== - dependencies: - tslib "^2.6.2" - -"@smithy/util-buffer-from@^2.2.0": - version "2.2.0" - resolved "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz" - integrity sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA== - dependencies: - "@smithy/is-array-buffer" "^2.2.0" - tslib "^2.6.2" - -"@smithy/util-buffer-from@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz" - integrity sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA== - dependencies: - "@smithy/is-array-buffer" "^3.0.0" - tslib "^2.6.2" - -"@smithy/util-config-provider@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz" - integrity sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ== - dependencies: - tslib "^2.6.2" - -"@smithy/util-defaults-mode-browser@^3.0.23": - version "3.0.23" - resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.23.tgz" - integrity sha512-Y07qslyRtXDP/C5aWKqxTPBl4YxplEELG3xRrz2dnAQ6Lq/FgNrcKWmV561nNaZmFH+EzeGOX3ZRMbU8p1T6Nw== - dependencies: - "@smithy/property-provider" "^3.1.7" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - bowser "^2.11.0" - tslib "^2.6.2" - -"@smithy/util-defaults-mode-node@^3.0.23": - version "3.0.23" - resolved "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.23.tgz" - integrity sha512-9Y4WH7f0vnDGuHUa4lGX9e2p+sMwODibsceSV6rfkZOvMC+BY3StB2LdO1NHafpsyHJLpwAgChxQ38tFyd6vkg== - dependencies: - "@smithy/config-resolver" "^3.0.9" - "@smithy/credential-provider-imds" "^3.2.4" - "@smithy/node-config-provider" "^3.1.8" - "@smithy/property-provider" "^3.1.7" - "@smithy/smithy-client" "^3.4.0" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/util-endpoints@^2.1.3": - version "2.1.3" - resolved "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.1.3.tgz" - integrity sha512-34eACeKov6jZdHqS5hxBMJ4KyWKztTMulhuQ2UdOoP6vVxMLrOKUqIXAwJe/wiWMhXhydLW664B02CNpQBQ4Aw== - dependencies: - "@smithy/node-config-provider" "^3.1.8" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/util-hex-encoding@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz" - integrity sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ== - dependencies: - tslib "^2.6.2" - -"@smithy/util-middleware@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.7.tgz" - integrity sha512-OVA6fv/3o7TMJTpTgOi1H5OTwnuUa8hzRzhSFDtZyNxi6OZ70L/FHattSmhE212I7b6WSOJAAmbYnvcjTHOJCA== - dependencies: - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/util-retry@^3.0.7": - version "3.0.7" - resolved "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.7.tgz" - integrity sha512-nh1ZO1vTeo2YX1plFPSe/OXaHkLAHza5jpokNiiKX2M5YpNUv6RxGJZhpfmiR4jSvVHCjIDmILjrxKmP+/Ghug== - dependencies: - "@smithy/service-error-classification" "^3.0.7" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@smithy/util-stream@^3.1.9": - version "3.1.9" - resolved "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.9.tgz" - integrity sha512-7YAR0Ub3MwTMjDfjnup4qa6W8gygZMxikBhFMPESi6ASsl/rZJhwLpF/0k9TuezScCojsM0FryGdz4LZtjKPPQ== - dependencies: - "@smithy/fetch-http-handler" "^3.2.9" - "@smithy/node-http-handler" "^3.2.4" - "@smithy/types" "^3.5.0" - "@smithy/util-base64" "^3.0.0" - "@smithy/util-buffer-from" "^3.0.0" - "@smithy/util-hex-encoding" "^3.0.0" - "@smithy/util-utf8" "^3.0.0" - tslib "^2.6.2" - -"@smithy/util-uri-escape@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz" - integrity sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg== - dependencies: - tslib "^2.6.2" - -"@smithy/util-utf8@^2.0.0": - version "2.3.0" - resolved "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz" - integrity sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A== - dependencies: - "@smithy/util-buffer-from" "^2.2.0" - tslib "^2.6.2" - -"@smithy/util-utf8@^3.0.0": - version "3.0.0" - resolved "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz" - integrity sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA== - dependencies: - "@smithy/util-buffer-from" "^3.0.0" - tslib "^2.6.2" - -"@smithy/util-waiter@^3.1.6": - version "3.1.6" - resolved "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.6.tgz" - integrity sha512-xs/KAwWOeCklq8aMlnpk25LgxEYHKOEodfjfKclDMLcBJEVEKzDLxZxBQyztcuPJ7F54213NJS8PxoiHNMdItQ== - dependencies: - "@smithy/abort-controller" "^3.1.5" - "@smithy/types" "^3.5.0" - tslib "^2.6.2" - -"@swc/core-win32-x64-msvc@1.11.29": - version "1.11.29" - resolved "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.29.tgz" - integrity sha512-Q8cs2BDV9wqDvqobkXOYdC+pLUSEpX/KvI0Dgfun1F+LzuLotRFuDhrvkU9ETJA6OnD2+Fn/ieHgloiKA/Mn/g== - -"@swc/core@^1.11.22": - version "1.11.29" - resolved "https://registry.npmjs.org/@swc/core/-/core-1.11.29.tgz" - integrity sha512-g4mThMIpWbNhV8G2rWp5a5/Igv8/2UFRJx2yImrLGMgrDDYZIopqZ/z0jZxDgqNA1QDx93rpwNF7jGsxVWcMlA== - dependencies: - "@swc/counter" "^0.1.3" - "@swc/types" "^0.1.21" - optionalDependencies: - "@swc/core-darwin-arm64" "1.11.29" - "@swc/core-darwin-x64" "1.11.29" - "@swc/core-linux-arm-gnueabihf" "1.11.29" - "@swc/core-linux-arm64-gnu" "1.11.29" - "@swc/core-linux-arm64-musl" "1.11.29" - "@swc/core-linux-x64-gnu" "1.11.29" - "@swc/core-linux-x64-musl" "1.11.29" - "@swc/core-win32-arm64-msvc" "1.11.29" - "@swc/core-win32-ia32-msvc" "1.11.29" - "@swc/core-win32-x64-msvc" "1.11.29" - -"@swc/counter@^0.1.3": - version "0.1.3" - resolved "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz" - integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ== - -"@swc/types@^0.1.21": - version "0.1.21" - resolved "https://registry.npmjs.org/@swc/types/-/types-0.1.21.tgz" - integrity sha512-2YEtj5HJVbKivud9N4bpPBAyZhj4S2Ipe5LkUG94alTpr7in/GU/EARgPAd3BwU+YOmFVJC2+kjqhGRi3r0ZpQ== - dependencies: - "@swc/counter" "^0.1.3" - -"@tekdi/all-telemetry-sdk@^0.0.32": - version "0.0.32" - resolved "https://registry.npmjs.org/@tekdi/all-telemetry-sdk/-/all-telemetry-sdk-0.0.32.tgz" - integrity sha512-TFRKsMD2StLtUTyoVkVgsgMW9nIsRotxZ7qs/VxGSd55hc/LHc82kuF6pMlT+h6Y6wJHm67Kfk227Vb2Ykttog== - dependencies: - grunt-karma "^0.12.2" - karma "^3.0.0" - -"@testing-library/dom@^8.5.0": - version "8.20.1" - resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-8.20.1.tgz" - integrity sha512-/DiOQ5xBxgdYRC8LNk7U+RWat0S3qRLeIw3ZIkMQ9kkVlRmwD/Eg8k8CqIpD6GW7u20JIUOfMKbxtiLutpjQ4g== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/runtime" "^7.12.5" - "@types/aria-query" "^5.0.1" - aria-query "5.1.3" - chalk "^4.1.0" - dom-accessibility-api "^0.5.9" - lz-string "^1.5.0" - pretty-format "^27.0.2" - -"@testing-library/jest-dom@^5.17.0": - version "5.17.0" - resolved "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-5.17.0.tgz" - integrity sha512-ynmNeT7asXyH3aSVv4vvX4Rb+0qjOhdNHnO/3vuZNqPmhDpV/+rCSGwQ7bLcmU2cJ4dvoheIO85LQj0IbJHEtg== - dependencies: - "@adobe/css-tools" "^4.0.1" - "@babel/runtime" "^7.9.2" - "@types/testing-library__jest-dom" "^5.9.1" - aria-query "^5.0.0" - chalk "^3.0.0" - css.escape "^1.5.1" - dom-accessibility-api "^0.5.6" - lodash "^4.17.15" - redent "^3.0.0" - -"@testing-library/react@^13.4.0": - version "13.4.0" - resolved "https://registry.npmjs.org/@testing-library/react/-/react-13.4.0.tgz" - integrity sha512-sXOGON+WNTh3MLE9rve97ftaZukN3oNf2KjDy7YTx6hcTO2uuLHuCGynMDhFwGw/jYf4OJ2Qk0i4i79qMNNkyw== - dependencies: - "@babel/runtime" "^7.12.5" - "@testing-library/dom" "^8.5.0" - "@types/react-dom" "^18.0.0" - -"@testing-library/user-event@^13.5.0": - version "13.5.0" - resolved "https://registry.npmjs.org/@testing-library/user-event/-/user-event-13.5.0.tgz" - integrity sha512-5Kwtbo3Y/NowpkbRuSepbyMFkZmHgD+vPzYB/RJ4oxt5Gj/avFFBYjhw27cqSVPVw/3a67NK1PbiIr9k4Gwmdg== - dependencies: - "@babel/runtime" "^7.12.5" - -"@tsconfig/node10@^1.0.7": - version "1.0.11" - resolved "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz" - integrity sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw== - -"@tsconfig/node12@^1.0.7": - version "1.0.11" - resolved "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz" - integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== - -"@tsconfig/node14@^1.0.0": - version "1.0.3" - resolved "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz" - integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== - -"@tsconfig/node16@^1.0.2": - version "1.0.4" - resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz" - integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== - -"@types/aria-query@^5.0.1": - version "5.0.4" - resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz" - integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw== - -"@types/babel__core@^7.20.5": - version "7.20.5" - resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz" - integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== - dependencies: - "@babel/parser" "^7.20.7" - "@babel/types" "^7.20.7" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.27.0" - resolved "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz" - integrity sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.4" - resolved "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz" - integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*": - version "7.20.7" - resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz" - integrity sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng== - dependencies: - "@babel/types" "^7.20.7" - -"@types/estree@1.0.7": - version "1.0.7" - resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz" - integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== - -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": - version "2.0.4" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== - -"@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz" - integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^3.0.0": - version "3.0.1" - resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz" - integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== - dependencies: - "@types/istanbul-lib-report" "*" - -"@types/jest@*": - version "29.4.0" - resolved "https://registry.npmjs.org/@types/jest/-/jest-29.4.0.tgz" - integrity sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ== - dependencies: - expect "^29.0.0" - pretty-format "^29.0.0" - -"@types/json5@^0.0.29": - version "0.0.29" - resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz" - integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== - -"@types/node@*": - version "18.14.1" - resolved "https://registry.npmjs.org/@types/node/-/node-18.14.1.tgz" - integrity sha512-QH+37Qds3E0eDlReeboBxfHbX9omAcBCXEzswCu6jySP642jiM3cYSIkU/REqwhCUqXdonHFuBfJDiAJxMNhaQ== - -"@types/parse-json@^4.0.0": - version "4.0.2" - resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz" - integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw== - -"@types/prop-types@*", "@types/prop-types@^15.7.12": - version "15.7.13" - resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz" - integrity sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA== - -"@types/react-dom@^18.0.0": - version "18.3.1" - resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz" - integrity sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ== - dependencies: - "@types/react" "*" - -"@types/react-transition-group@^4.4.10": - version "4.4.10" - resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.10.tgz" - integrity sha512-hT/+s0VQs2ojCX823m60m5f0sL5idt9SO6Tj6Dg+rdphGPIeJbJ6CxvBYkgkGKrYeDjvIpKTR38UzmtHJOGW3Q== - dependencies: - "@types/react" "*" - -"@types/react@*": - version "18.2.50" - resolved "https://registry.npmjs.org/@types/react/-/react-18.2.50.tgz" - integrity sha512-y0XIDJkqp9HynS1VBktZG9mUziHTK5WZTAFDP/UfzSq+poV1drUKsr4VkjMyHTbqMz26BwgLZVYdx/EgPm7EkQ== - dependencies: - "@types/prop-types" "*" - "@types/scheduler" "*" - csstype "^3.0.2" - -"@types/scheduler@*": - version "0.16.8" - resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz" - integrity sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A== - -"@types/stack-utils@^2.0.0": - version "2.0.1" - resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz" - integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== - -"@types/testing-library__jest-dom@^5.9.1": - version "5.14.5" - resolved "https://registry.npmjs.org/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz" - integrity sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ== - dependencies: - "@types/jest" "*" - -"@types/use-sync-external-store@^0.0.3": - version "0.0.3" - resolved "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz" - integrity sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA== - -"@types/yargs-parser@*": - version "21.0.0" - resolved "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz" - integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== - -"@types/yargs@^17.0.8": - version "17.0.22" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.22.tgz" - integrity sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g== - dependencies: - "@types/yargs-parser" "*" - -"@vitejs/plugin-react-swc@^3.10.0": - version "3.10.0" - resolved "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.10.0.tgz" - integrity sha512-ZmkdHw3wo/o/Rk05YsXZs/DJAfY2CdQ5DUAjoWji+PEr+hYADdGMCGgEAILbiKj+CjspBTuTACBcWDrmC8AUfw== - dependencies: - "@rolldown/pluginutils" "1.0.0-beta.9" - "@swc/core" "^1.11.22" - -"@vitejs/plugin-react@^4.5.0": - version "4.5.0" - resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.5.0.tgz" - integrity sha512-JuLWaEqypaJmOJPLWwO335Ig6jSgC1FTONCWAxnqcQthLTK/Yc9aH6hr9z/87xciejbQcnP3GnA1FWUSWeXaeg== - dependencies: - "@babel/core" "^7.26.10" - "@babel/plugin-transform-react-jsx-self" "^7.25.9" - "@babel/plugin-transform-react-jsx-source" "^7.25.9" - "@rolldown/pluginutils" "1.0.0-beta.9" - "@types/babel__core" "^7.20.5" - react-refresh "^0.17.0" - -abort-controller@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz" - integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== - dependencies: - event-target-shim "^5.0.0" - -accepts@~1.3.4: - 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== - dependencies: - mime-types "~2.1.34" - negotiator "0.6.3" - -acorn-jsx@^5.3.1: - version "5.3.2" - resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" - integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== - -acorn-walk@^8.1.1: - version "8.3.4" - resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz" - integrity sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g== - dependencies: - acorn "^8.11.0" - -acorn@^7.4.0: - version "7.4.1" - resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.11.0: - version "8.13.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz" - integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w== - -acorn@^8.4.1: - version "8.13.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz" - integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w== - -after@0.8.2: - version "0.8.2" - resolved "https://registry.npmjs.org/after/-/after-0.8.2.tgz" - integrity sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA== - -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - -ajv@^6.10.0: - version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - 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" - -ajv@^6.12.3: - version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - 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" - -ajv@^6.12.4: - version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== - 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" - -ajv@^8.0.1, ajv@^8.17.1: - version "8.17.1" - resolved "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz" - integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== - dependencies: - fast-deep-equal "^3.1.3" - fast-uri "^3.0.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - -ansi-colors@^4.1.1: - 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== - -ansi-escapes@^4.3.0: - version "4.3.2" - resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz" - integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== - dependencies: - type-fest "^0.21.3" - -ansi-regex@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz" - integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== - -ansi-styles@^3.2.1: - 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== - dependencies: - color-convert "^1.9.0" - -ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.3.0" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" - integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== - dependencies: - color-convert "^2.0.1" - -ansi-styles@^5.0.0: - version "5.2.0" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz" - integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== - -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" - -anymatch@~3.1.2: - version "3.1.3" - resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -arg@^4.1.0: - version "4.1.3" - resolved "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz" - integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== - -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - -aria-query@^5.0.0, aria-query@5.1.3: - version "5.1.3" - resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz" - integrity sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ== - dependencies: - deep-equal "^2.0.5" - -aria-query@^5.3.0: - version "5.3.0" - resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz" - integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A== - dependencies: - dequal "^2.0.3" - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz" - integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz" - integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== - -array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz" - integrity sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw== - dependencies: - call-bound "^1.0.3" - is-array-buffer "^3.0.5" - -array-includes@^3.1.6, array-includes@^3.1.7, array-includes@^3.1.8: - version "3.1.9" - resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz" - integrity sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.4" - define-properties "^1.2.1" - es-abstract "^1.24.0" - es-object-atoms "^1.1.1" - get-intrinsic "^1.3.0" - is-string "^1.1.1" - math-intrinsics "^1.1.0" - -array-slice@^0.2.3: - version "0.2.3" - resolved "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz" - integrity sha512-rlVfZW/1Ph2SNySXwR9QYkChp8EkOEiTMO5Vwx60usw04i4nWemkm9RXmQqgkQFaLHsqLuADvjp6IfgL9l2M8Q== - -array-unique@^0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz" - integrity sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg== - -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz" - integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== - -array.prototype.findlast@^1.2.5: - version "1.2.5" - resolved "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz" - integrity sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - es-errors "^1.3.0" - es-object-atoms "^1.0.0" - es-shim-unscopables "^1.0.2" - -array.prototype.findlastindex@^1.2.3: - version "1.2.3" - resolved "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz" - integrity sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" - get-intrinsic "^1.2.1" - -array.prototype.flat@^1.3.1, array.prototype.flat@^1.3.2: - version "1.3.2" - resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz" - integrity sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - es-shim-unscopables "^1.0.0" - -array.prototype.flatmap@^1.3.2, array.prototype.flatmap@^1.3.3: - version "1.3.3" - resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz" - integrity sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg== - dependencies: - call-bind "^1.0.8" - define-properties "^1.2.1" - es-abstract "^1.23.5" - es-shim-unscopables "^1.0.2" - -array.prototype.tosorted@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz" - integrity sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.3" - es-errors "^1.3.0" - es-shim-unscopables "^1.0.2" - -arraybuffer.prototype.slice@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz" - integrity sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ== - dependencies: - array-buffer-byte-length "^1.0.1" - call-bind "^1.0.8" - define-properties "^1.2.1" - es-abstract "^1.23.5" - es-errors "^1.3.0" - get-intrinsic "^1.2.6" - is-array-buffer "^3.0.4" - -arraybuffer.slice@~0.0.7: - version "0.0.7" - resolved "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz" - integrity sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog== - -asn1@~0.2.3: - version "0.2.6" - resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz" - integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@^1.0.0, assert-plus@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" - integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz" - integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== - -ast-types-flow@^0.0.8: - version "0.0.8" - resolved "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz" - integrity sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ== - -astral-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" - integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== - -async-each@^1.0.1: - version "1.0.6" - resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz" - integrity sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg== - -async-function@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz" - integrity sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA== - -async-limiter@~1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz" - integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" - integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== - -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -available-typed-arrays@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz" - integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== - dependencies: - possible-typed-array-names "^1.0.0" - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz" - integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== - -aws4@^1.8.0: - version "1.12.0" - resolved "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz" - integrity sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg== - -axe-core@=4.7.0: - version "4.7.0" - resolved "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz" - integrity sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ== - -axios@^1.4.0, axios@^1.6.5: - version "1.6.7" - resolved "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz" - integrity sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA== - dependencies: - follow-redirects "^1.15.4" - form-data "^4.0.0" - proxy-from-env "^1.1.0" - -axobject-query@^3.2.1: - version "3.2.1" - resolved "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz" - integrity sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg== - dependencies: - dequal "^2.0.3" - -babel-plugin-macros@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz" - integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== - dependencies: - "@babel/runtime" "^7.12.5" - cosmiconfig "^7.0.0" - resolve "^1.19.0" - -backo2@1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz" - integrity sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA== - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -base-x@^3.0.2: - version "3.0.9" - resolved "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz" - integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== - dependencies: - safe-buffer "^5.0.1" - -base@^0.11.1: - version "0.11.2" - resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - -base64-arraybuffer@0.1.5: - version "0.1.5" - resolved "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz" - integrity sha512-437oANT9tP582zZMwSvZGy2nmSeAb8DW2me3y+Uv1Wp2Rulr8Mqlyrv3E7MLxmsiaPSMMDmiDVzgE+e8zlMx9g== - -base64id@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz" - integrity sha512-rz8L+d/xByiB/vLVftPkyY215fqNrmasrcJsYkVcm4TgJNz+YXKrFaFAWibSaHkiKoSgMDCb+lipOIRQNGYesw== - -base64url-universal@^1.0.1: - version "1.1.0" - resolved "https://registry.npmjs.org/base64url-universal/-/base64url-universal-1.1.0.tgz" - integrity sha512-WyftvZqye29YQ10ZnuiBeEj0lk8SN8xHU9hOznkLc85wS1cLTp6RpzlMrHxMPD9nH7S55gsBqMqgGyz93rqmkA== - dependencies: - base64url "^3.0.0" - -base64url@^3.0.0, base64url@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz" - integrity sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A== - -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz" - integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== - dependencies: - tweetnacl "^0.14.3" - -better-assert@~1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz" - integrity sha512-bYeph2DFlpK1XmGs6fvlLRUN29QISM3GBuUwSFsMY2XRx4AvC0WNCS57j4c/xGrK2RS24C1w3YoBOsw9fT46tQ== - dependencies: - callsite "1.0.0" - -binary-extensions@^1.0.0: - version "1.13.1" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz" - integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== - -binary-extensions@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" - integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== - -blob@0.0.5: - version "0.0.5" - resolved "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz" - integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig== - -bluebird@^3.3.0: - version "3.7.2" - resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - -body-parser@^1.16.1: - version "1.20.3" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz" - integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g== - 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.13.0" - raw-body "2.5.2" - type-is "~1.6.18" - unpipe "1.0.0" - -bowser@^2.11.0: - version "2.11.0" - resolved "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz" - integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA== - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@^0.1.2: - version "0.1.5" - resolved "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz" - integrity sha512-EIMHIv2UXHWFY2xubUGKz+hq9hNkENj4Pjvr7h58cmJgpkK2yMlKA8I484f7MSttkzVAy/lL7X9xDaILd6avzA== - dependencies: - expand-range "^0.1.0" - -braces@^2.3.1, braces@^2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - -braces@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -braces@~3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== - dependencies: - fill-range "^7.0.1" - -browserslist@^4.24.0: - version "4.24.0" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz" - integrity sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A== - dependencies: - caniuse-lite "^1.0.30001663" - electron-to-chromium "^1.5.28" - node-releases "^2.0.18" - update-browserslist-db "^1.1.0" - -bs58@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz" - integrity sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw== - dependencies: - base-x "^3.0.2" - -buffer-alloc-unsafe@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz" - integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg== - -buffer-alloc@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz" - integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow== - dependencies: - buffer-alloc-unsafe "^1.1.0" - buffer-fill "^1.0.0" - -buffer-fill@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz" - integrity sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ== - -bytes@3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz" - integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== - -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - -call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz" - integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== - dependencies: - es-errors "^1.3.0" - function-bind "^1.1.2" - -call-bind@^1.0.2, call-bind@^1.0.7, call-bind@^1.0.8: - version "1.0.8" - resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz" - integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== - dependencies: - call-bind-apply-helpers "^1.0.0" - es-define-property "^1.0.0" - get-intrinsic "^1.2.4" - set-function-length "^1.2.2" - -call-bound@^1.0.2, call-bound@^1.0.3, call-bound@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz" - integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== - dependencies: - call-bind-apply-helpers "^1.0.2" - get-intrinsic "^1.3.0" - -callsite@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz" - integrity sha512-0vdNRFXn5q+dtOqjfFtmtlI9N2eVZ7LMyEV2iKC5mEEFvSg/69Ml6b/WU2qF8W1nLRa0wiSrDT3Y5jOHZCwKPQ== - -callsites@^3.0.0: - version "3.1.0" - resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" - integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== - -caniuse-lite@^1.0.30001663: - version "1.0.30001669" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz" - integrity sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w== - -canonicalize@^1.0.1: - version "1.0.8" - resolved "https://registry.npmjs.org/canonicalize/-/canonicalize-1.0.8.tgz" - integrity sha512-0CNTVCLZggSh7bc5VkX5WWPWO+cyZbNd07IHIsSXLia/eAq+r836hgk+8BKoEh7949Mda87VUOitx5OddVj64A== - -canvas-confetti@^1.9.2: - version "1.9.3" - resolved "https://registry.npmjs.org/canvas-confetti/-/canvas-confetti-1.9.3.tgz" - integrity sha512-rFfTURMvmVEX1gyXFgn5QMn81bYk70qa0HLzcIOSVEyl57n6o9ItHeBtUSWdvKAPY0xlvBHno4/v3QPrT83q9g== - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz" - integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== - -chalk@^2.4.2: - version "2.4.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" - integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== - dependencies: - ansi-styles "^3.2.1" - escape-string-regexp "^1.0.5" - supports-color "^5.3.0" - -chalk@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz" - integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^4.0.0: - version "4.1.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^4.1.0: - version "4.1.2" - resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -character-error-rate@^1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/character-error-rate/-/character-error-rate-1.1.4.tgz" - integrity sha512-VDVylpiUdLOqY9aowYsz9M3zKdeQAdFF76PI1lv3oBQANQ6bc6V7pGEqar9nx6c37x0UMu5EHg32Sus3fQ1XxQ== - -chokidar@^2.0.3: - version "2.1.8" - resolved "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz" - integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== - dependencies: - anymatch "^2.0.0" - async-each "^1.0.1" - braces "^2.3.2" - glob-parent "^3.1.0" - inherits "^2.0.3" - is-binary-path "^1.0.0" - is-glob "^4.0.0" - normalize-path "^3.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.2.1" - upath "^1.1.1" - optionalDependencies: - fsevents "^1.2.7" - -"chokidar@>=3.0.0 <4.0.0": - version "3.5.3" - resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== - 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" - optionalDependencies: - fsevents "~2.3.2" - -ci-info@^3.2.0: - version "3.8.0" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz" - integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== - -circular-json@^0.5.5: - version "0.5.9" - resolved "https://registry.npmjs.org/circular-json/-/circular-json-0.5.9.tgz" - integrity sha512-4ivwqHpIFJZBuhN3g/pEcdbnGUywkBblloGbkglyloVjjR3uT6tieI89MVOfbP2tHX5sgb01FuLgAOzebNlJNQ== - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - -classnames@^2.3.1: - version "2.5.1" - resolved "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz" - integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow== - -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - -cli-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" - integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== - dependencies: - restore-cursor "^3.1.0" - -cli-truncate@^2.1.0, cli-truncate@2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz" - integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== - dependencies: - slice-ansi "^3.0.0" - string-width "^4.2.0" - -clsx@^1.0.4: - version "1.2.1" - resolved "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz" - integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== - -clsx@^2.1.0, clsx@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz" - integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz" - integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - -color-convert@^1.9.0: - version "1.9.3" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" - integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== - dependencies: - color-name "1.1.3" - -color-convert@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" - integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== - dependencies: - color-name "~1.1.4" - -color-name@~1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" - integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== - -color-name@1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== - -colorette@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz" - integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g== - -colorette@^2.0.16: - version "2.0.20" - resolved "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz" - integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== - -colors@^1.1.0: - version "1.4.0" - resolved "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz" - integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== - -combine-lists@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz" - integrity sha512-4Mi0V7N48B9KzC8Zl/U7wiWuxMFEHf44N3/PSoAvWDu8IOPrddNo1y1tC/kXbP7IvVMhgCFMMNzgKb0pWoin9w== - dependencies: - lodash "^4.5.0" - -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: - version "1.0.8" - resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -commander@^8.2.0: - version "8.3.0" - resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" - integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== - -component-bind@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz" - integrity sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw== - -component-emitter@^1.2.1: - version "1.3.1" - resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz" - integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== - -component-emitter@1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz" - integrity sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA== - -component-inherit@0.0.3: - version "0.0.3" - resolved "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz" - integrity sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA== - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== - -connect@^3.6.0: - version "3.7.0" - resolved "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz" - integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== - dependencies: - debug "2.6.9" - finalhandler "1.1.2" - parseurl "~1.3.3" - utils-merge "1.0.1" - -content-type@~1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz" - integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== - -convert-source-map@^1.5.0: - 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== - -convert-source-map@^2.0.0: - 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== - -cookie@0.3.1: - version "0.3.1" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz" - integrity sha512-+IJOX0OqlHCszo2mBUq+SrEbCj6w7Kpffqx60zYbPTFaO4+yYgRjHwcZNpWvaTylDHaV7PPmBHzSecZiMhtPgw== - -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz" - integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== - -core-js@^2.2.0: - version "2.6.12" - resolved "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz" - integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== - -core-util-is@~1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" - integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== - -core-util-is@1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" - integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== - -cosmiconfig@^7.0.0, cosmiconfig@^7.0.1: - version "7.1.0" - resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz" - integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== - 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" - -create-require@^1.1.0: - version "1.1.1" - resolved "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz" - integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== - -cross-spawn@^7.0.2, cross-spawn@^7.0.3: - version "7.0.3" - resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" - integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - -crypto-js@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz" - integrity sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q== - -crypto-ld@^3.7.0: - version "3.9.0" - resolved "https://registry.npmjs.org/crypto-ld/-/crypto-ld-3.9.0.tgz" - integrity sha512-PFE7V6A2QNnUp6iiPVEZI4p8wsztkEWLbY1BAXVnclm/aw4KGwpJ+1Ds4vQUCJ5BsWxj15fwE5rHQ8AWaWB2nw== - dependencies: - base64url-universal "^1.0.1" - bs58 "^4.0.1" - node-forge "~0.10.0" - semver "^6.2.0" - optionalDependencies: - sodium-native "^3.2.0" - -css-vendor@^2.0.8: - version "2.0.8" - resolved "https://registry.npmjs.org/css-vendor/-/css-vendor-2.0.8.tgz" - integrity sha512-x9Aq0XTInxrkuFeHKbYC7zWY8ai7qJ04Kxd9MnvbC1uO5DagxoHQjm4JvG+vCdXOoFtCjbL2XSZfxmoYa9uQVQ== - dependencies: - "@babel/runtime" "^7.8.3" - is-in-browser "^1.0.2" - -css.escape@^1.5.1: - version "1.5.1" - resolved "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz" - integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== - -csstype@^3.0.2, csstype@^3.1.2, csstype@^3.1.3: - version "3.1.3" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz" - integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== - -custom-event@~1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz" - integrity sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg== - -damerau-levenshtein@^1.0.8: - version "1.0.8" - resolved "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz" - integrity sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA== - -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz" - integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== - dependencies: - assert-plus "^1.0.0" - -data-uri-to-buffer@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz" - integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== - -data-view-buffer@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz" - integrity sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ== - dependencies: - call-bound "^1.0.3" - es-errors "^1.3.0" - is-data-view "^1.0.2" - -data-view-byte-length@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz" - integrity sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ== - dependencies: - call-bound "^1.0.3" - es-errors "^1.3.0" - is-data-view "^1.0.2" - -data-view-byte-offset@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz" - integrity sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ== - dependencies: - call-bound "^1.0.2" - es-errors "^1.3.0" - is-data-view "^1.0.1" - -date-format@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz" - integrity sha512-lAJqBmFzCLcDJdI9cEnJ7loSkLTh1PbIgZUndlzvYbf6NyFEr5n9rQhOwr6CIGwZqyQ3sYeQQiP9NOVQmgmRMA== - -dayjs@^1.8.20: - version "1.11.10" - resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz" - integrity sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ== - -debug@^2.2.0: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^2.3.3: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@^3.1.0: - version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - -debug@^3.2.7: - version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - -debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: - version "4.3.4" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -debug@~3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@2.6.9: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -decode-uri-component@^0.2.0: - version "0.2.2" - resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz" - integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== - -deep-diff@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/deep-diff/-/deep-diff-1.0.2.tgz" - integrity sha512-aWS3UIVH+NPGCD1kki+DCU9Dua032iSsO43LqQpcs4R3+dVv7tX0qBGjiVHJHjplsoUM2XRO/KB92glqc68awg== - -deep-equal@^2.0.5: - version "2.2.0" - resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.0.tgz" - integrity sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw== - dependencies: - call-bind "^1.0.2" - es-get-iterator "^1.1.2" - get-intrinsic "^1.1.3" - is-arguments "^1.1.1" - is-array-buffer "^3.0.1" - is-date-object "^1.0.5" - is-regex "^1.1.4" - is-shared-array-buffer "^1.0.2" - isarray "^2.0.5" - object-is "^1.1.5" - object-keys "^1.1.1" - object.assign "^4.1.4" - regexp.prototype.flags "^1.4.3" - side-channel "^1.0.4" - which-boxed-primitive "^1.0.2" - which-collection "^1.0.1" - which-typed-array "^1.1.9" - -deep-is@^0.1.3: - version "0.1.4" - resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" - integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== - -deepmerge@^4.3.1: - version "4.3.1" - resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz" - integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== - -define-data-property@^1.0.1, define-data-property@^1.1.4: - 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== - dependencies: - es-define-property "^1.0.0" - es-errors "^1.3.0" - gopd "^1.0.1" - -define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz" - integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== - dependencies: - define-data-property "^1.0.1" - has-property-descriptors "^1.0.0" - object-keys "^1.1.1" - -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz" - integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz" - integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" - integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== - -depd@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - -dequal@^2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz" - integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== - -destroy@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== - -di@^0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/di/-/di-0.0.1.tgz" - integrity sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA== - -diff-sequences@^29.4.3: - version "29.4.3" - resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz" - integrity sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA== - -diff@^4.0.1: - version "4.0.2" - resolved "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz" - integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== - -doctrine@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" - integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== - dependencies: - esutils "^2.0.2" - -doctrine@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" - integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== - dependencies: - esutils "^2.0.2" - -dom-accessibility-api@^0.5.6, dom-accessibility-api@^0.5.9: - version "0.5.16" - resolved "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz" - integrity sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg== - -dom-helpers@^5.0.1, dom-helpers@^5.1.3: - version "5.2.1" - resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz" - integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA== - dependencies: - "@babel/runtime" "^7.8.7" - csstype "^3.0.2" - -dom-serialize@^2.2.0: - version "2.2.1" - resolved "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz" - integrity sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ== - dependencies: - custom-event "~1.0.0" - ent "~2.2.0" - extend "^3.0.0" - void-elements "^2.0.0" - -dunder-proto@^1.0.0, dunder-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz" - integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== - dependencies: - call-bind-apply-helpers "^1.0.1" - es-errors "^1.3.0" - gopd "^1.2.0" - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz" - integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" - integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== - -electron-to-chromium@^1.5.28: - version "1.5.41" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.41.tgz" - integrity sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ== - -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - -emoji-regex@^9.2.2: - version "9.2.2" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz" - integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" - integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== - -engine.io-client@~3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz" - integrity sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw== - dependencies: - component-emitter "1.2.1" - component-inherit "0.0.3" - debug "~3.1.0" - engine.io-parser "~2.1.1" - has-cors "1.1.0" - indexof "0.0.1" - parseqs "0.0.5" - parseuri "0.0.5" - ws "~3.3.1" - xmlhttprequest-ssl "~1.5.4" - yeast "0.1.2" - -engine.io-parser@~2.1.0, engine.io-parser@~2.1.1: - version "2.1.3" - resolved "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz" - integrity sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA== - dependencies: - after "0.8.2" - arraybuffer.slice "~0.0.7" - base64-arraybuffer "0.1.5" - blob "0.0.5" - has-binary2 "~1.0.2" - -engine.io@~3.2.0: - version "3.2.1" - resolved "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz" - integrity sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w== - dependencies: - accepts "~1.3.4" - base64id "1.0.0" - cookie "0.3.1" - debug "~3.1.0" - engine.io-parser "~2.1.0" - ws "~3.3.1" - -enquirer@^2.3.5, enquirer@^2.3.6: - version "2.4.1" - resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz" - integrity sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ== - dependencies: - ansi-colors "^4.1.1" - strip-ansi "^6.0.1" - -ent@~2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz" - integrity sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA== - -error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== - dependencies: - is-arrayish "^0.2.1" - -es-abstract@^1.17.5, es-abstract@^1.22.1, es-abstract@^1.23.2, es-abstract@^1.23.3, es-abstract@^1.23.5, es-abstract@^1.23.6, es-abstract@^1.23.9, es-abstract@^1.24.0: - version "1.24.0" - resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.0.tgz" - integrity sha512-WSzPgsdLtTcQwm4CROfS5ju2Wa1QQcVeT37jFjYzdFz1r9ahadC8B8/a4qxJxM+09F18iumCdRmlr96ZYkQvEg== - dependencies: - array-buffer-byte-length "^1.0.2" - arraybuffer.prototype.slice "^1.0.4" - available-typed-arrays "^1.0.7" - call-bind "^1.0.8" - call-bound "^1.0.4" - data-view-buffer "^1.0.2" - data-view-byte-length "^1.0.2" - data-view-byte-offset "^1.0.1" - es-define-property "^1.0.1" - es-errors "^1.3.0" - es-object-atoms "^1.1.1" - es-set-tostringtag "^2.1.0" - es-to-primitive "^1.3.0" - function.prototype.name "^1.1.8" - get-intrinsic "^1.3.0" - get-proto "^1.0.1" - get-symbol-description "^1.1.0" - globalthis "^1.0.4" - gopd "^1.2.0" - has-property-descriptors "^1.0.2" - has-proto "^1.2.0" - has-symbols "^1.1.0" - hasown "^2.0.2" - internal-slot "^1.1.0" - is-array-buffer "^3.0.5" - is-callable "^1.2.7" - is-data-view "^1.0.2" - is-negative-zero "^2.0.3" - is-regex "^1.2.1" - is-set "^2.0.3" - is-shared-array-buffer "^1.0.4" - is-string "^1.1.1" - is-typed-array "^1.1.15" - is-weakref "^1.1.1" - math-intrinsics "^1.1.0" - object-inspect "^1.13.4" - object-keys "^1.1.1" - object.assign "^4.1.7" - own-keys "^1.0.1" - regexp.prototype.flags "^1.5.4" - safe-array-concat "^1.1.3" - safe-push-apply "^1.0.0" - safe-regex-test "^1.1.0" - set-proto "^1.0.0" - stop-iteration-iterator "^1.1.0" - string.prototype.trim "^1.2.10" - string.prototype.trimend "^1.0.9" - string.prototype.trimstart "^1.0.8" - typed-array-buffer "^1.0.3" - typed-array-byte-length "^1.0.3" - typed-array-byte-offset "^1.0.4" - typed-array-length "^1.0.7" - unbox-primitive "^1.1.0" - which-typed-array "^1.1.19" - -es-define-property@^1.0.0, es-define-property@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz" - integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== - -es-errors@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz" - integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== - -es-get-iterator@^1.1.2: - version "1.1.3" - resolved "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz" - integrity sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.1.3" - has-symbols "^1.0.3" - is-arguments "^1.1.1" - is-map "^2.0.2" - is-set "^2.0.2" - is-string "^1.0.7" - isarray "^2.0.5" - stop-iteration-iterator "^1.0.0" - -es-iterator-helpers@^1.0.15, es-iterator-helpers@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz" - integrity sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.3" - define-properties "^1.2.1" - es-abstract "^1.23.6" - es-errors "^1.3.0" - es-set-tostringtag "^2.0.3" - function-bind "^1.1.2" - get-intrinsic "^1.2.6" - globalthis "^1.0.4" - gopd "^1.2.0" - has-property-descriptors "^1.0.2" - has-proto "^1.2.0" - has-symbols "^1.1.0" - internal-slot "^1.1.0" - iterator.prototype "^1.1.4" - safe-array-concat "^1.1.3" - -es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz" - integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== - dependencies: - es-errors "^1.3.0" - -es-set-tostringtag@^2.0.3, es-set-tostringtag@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz" - integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== - dependencies: - es-errors "^1.3.0" - get-intrinsic "^1.2.6" - has-tostringtag "^1.0.2" - hasown "^2.0.2" - -es-shim-unscopables@^1.0.0, es-shim-unscopables@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz" - integrity sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw== - dependencies: - hasown "^2.0.0" - -es-to-primitive@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz" - integrity sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g== - dependencies: - is-callable "^1.2.7" - is-date-object "^1.0.5" - is-symbol "^1.0.4" - -esbuild@^0.25.0: - version "0.25.5" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.25.5.tgz" - integrity sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ== - optionalDependencies: - "@esbuild/aix-ppc64" "0.25.5" - "@esbuild/android-arm" "0.25.5" - "@esbuild/android-arm64" "0.25.5" - "@esbuild/android-x64" "0.25.5" - "@esbuild/darwin-arm64" "0.25.5" - "@esbuild/darwin-x64" "0.25.5" - "@esbuild/freebsd-arm64" "0.25.5" - "@esbuild/freebsd-x64" "0.25.5" - "@esbuild/linux-arm" "0.25.5" - "@esbuild/linux-arm64" "0.25.5" - "@esbuild/linux-ia32" "0.25.5" - "@esbuild/linux-loong64" "0.25.5" - "@esbuild/linux-mips64el" "0.25.5" - "@esbuild/linux-ppc64" "0.25.5" - "@esbuild/linux-riscv64" "0.25.5" - "@esbuild/linux-s390x" "0.25.5" - "@esbuild/linux-x64" "0.25.5" - "@esbuild/netbsd-arm64" "0.25.5" - "@esbuild/netbsd-x64" "0.25.5" - "@esbuild/openbsd-arm64" "0.25.5" - "@esbuild/openbsd-x64" "0.25.5" - "@esbuild/sunos-x64" "0.25.5" - "@esbuild/win32-arm64" "0.25.5" - "@esbuild/win32-ia32" "0.25.5" - "@esbuild/win32-x64" "0.25.5" - -escalade@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz" - integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" - integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== - -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - -escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - -escape-string-regexp@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz" - integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== - -eslint-config-prettier@^8.3.0: - version "8.10.0" - resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz" - integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg== - -eslint-import-resolver-node@^0.3.9: - version "0.3.9" - resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz" - integrity sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g== - dependencies: - debug "^3.2.7" - is-core-module "^2.13.0" - resolve "^1.22.4" - -eslint-module-utils@^2.8.0: - version "2.8.0" - resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz" - integrity sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw== - dependencies: - debug "^3.2.7" - -eslint-plugin-import@^2.28.0: - version "2.29.1" - resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz" - integrity sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw== - dependencies: - array-includes "^3.1.7" - array.prototype.findlastindex "^1.2.3" - array.prototype.flat "^1.3.2" - array.prototype.flatmap "^1.3.2" - debug "^3.2.7" - doctrine "^2.1.0" - eslint-import-resolver-node "^0.3.9" - eslint-module-utils "^2.8.0" - hasown "^2.0.0" - is-core-module "^2.13.1" - is-glob "^4.0.3" - minimatch "^3.1.2" - object.fromentries "^2.0.7" - object.groupby "^1.0.1" - object.values "^1.1.7" - semver "^6.3.1" - tsconfig-paths "^3.15.0" - -eslint-plugin-jsx-a11y@^6.7.1: - version "6.8.0" - resolved "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz" - integrity sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA== - dependencies: - "@babel/runtime" "^7.23.2" - aria-query "^5.3.0" - array-includes "^3.1.7" - array.prototype.flatmap "^1.3.2" - ast-types-flow "^0.0.8" - axe-core "=4.7.0" - axobject-query "^3.2.1" - damerau-levenshtein "^1.0.8" - emoji-regex "^9.2.2" - es-iterator-helpers "^1.0.15" - hasown "^2.0.0" - jsx-ast-utils "^3.3.5" - language-tags "^1.0.9" - minimatch "^3.1.2" - object.entries "^1.1.7" - object.fromentries "^2.0.7" - -eslint-plugin-prettier@^3.4.0: - version "3.4.1" - resolved "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz" - integrity sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g== - dependencies: - prettier-linter-helpers "^1.0.0" - -eslint-plugin-react-hooks@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz" - integrity sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg== - -eslint-plugin-react@^7.37.5: - version "7.37.5" - resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.5.tgz" - integrity sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA== - dependencies: - array-includes "^3.1.8" - array.prototype.findlast "^1.2.5" - array.prototype.flatmap "^1.3.3" - array.prototype.tosorted "^1.1.4" - doctrine "^2.1.0" - es-iterator-helpers "^1.2.1" - estraverse "^5.3.0" - hasown "^2.0.2" - jsx-ast-utils "^2.4.1 || ^3.0.0" - minimatch "^3.1.2" - object.entries "^1.1.9" - object.fromentries "^2.0.8" - object.values "^1.2.1" - prop-types "^15.8.1" - resolve "^2.0.0-next.5" - semver "^6.3.1" - string.prototype.matchall "^4.0.12" - string.prototype.repeat "^1.0.0" - -eslint-scope@^5.1.1, eslint-scope@5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" - integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== - dependencies: - esrecurse "^4.3.0" - estraverse "^4.1.1" - -eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== - dependencies: - eslint-visitor-keys "^1.1.0" - -eslint-visitor-keys@^1.1.0: - version "1.3.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - -eslint-visitor-keys@^2.0.0, eslint-visitor-keys@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz" - integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== - -eslint@^7.32.0: - version "7.32.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz" - integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== - dependencies: - "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.3" - "@humanwhocodes/config-array" "^0.5.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - enquirer "^2.3.5" - escape-string-regexp "^4.0.0" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" - esquery "^1.4.0" - esutils "^2.0.2" - fast-deep-equal "^3.1.3" - file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.1.2" - globals "^13.6.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash.merge "^4.6.2" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^6.0.9" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - -esm@^3.2.22: - version "3.2.25" - resolved "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz" - integrity sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA== - -espree@^7.3.0, espree@^7.3.1: - version "7.3.1" - resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" - integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== - dependencies: - acorn "^7.4.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^1.3.0" - -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -esquery@^1.4.0: - version "1.5.0" - resolved "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz" - integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg== - dependencies: - estraverse "^5.1.0" - -esrecurse@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" - integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== - dependencies: - estraverse "^5.2.0" - -estraverse@^4.1.1: - version "4.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" - integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== - -estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: - version "5.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz" - integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -event-target-shim@^5.0.0: - version "5.0.1" - resolved "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz" - integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== - -eventemitter3@^4.0.0: - version "4.0.7" - resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== - -execa@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz" - integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== - 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" - -expand-braces@^0.1.1: - version "0.1.2" - resolved "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz" - integrity sha512-zOOsEnAhvIxxd0esCNbYG2xerGf46niZ1egS43eV7Fu4t7VIScgPXMcMabCLaPrqkzwvwo6zZipDiX3t0ILF2w== - dependencies: - array-slice "^0.2.3" - array-unique "^0.2.1" - braces "^0.1.2" - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz" - integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expand-range@^0.1.0: - version "0.1.1" - resolved "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz" - integrity sha512-busOHJ0t7t5UcutcyNDqmaDX+1cb0XlqsAUgTlmplVv0rIqBaMcBSZRLlkDm0nxtl8O3o/EvRRrdQ/WnyPERLQ== - dependencies: - is-number "^0.1.1" - repeat-string "^0.2.2" - -expect@^29.0.0: - version "29.4.3" - resolved "https://registry.npmjs.org/expect/-/expect-29.4.3.tgz" - integrity sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg== - dependencies: - "@jest/expect-utils" "^29.4.3" - jest-get-type "^29.4.3" - jest-matcher-utils "^29.4.3" - jest-message-util "^29.4.3" - jest-util "^29.4.3" - -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" - integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" - integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" - integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@^3.0.0, extend@~3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extsprintf@^1.2.0, extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz" - integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== - -faker@^5.5.3: - version "5.5.3" - resolved "https://registry.npmjs.org/faker/-/faker-5.5.3.tgz" - integrity sha512-wLTv2a28wjUyWkbnX7u/ABZBkUkIF2fCd73V6P2oFqEGEktDfzWx4UxrSqtPRw0xPRAcjeAOIiJWqZm3pP4u3g== - -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: - 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== - -fast-diff@^1.1.2: - version "1.3.0" - resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz" - integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== - -fast-json-stable-stringify@^2.0.0: - 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== - -fast-levenshtein@^2.0.6: - version "2.0.6" - resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" - integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== - -fast-uri@^3.0.1: - version "3.0.3" - resolved "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz" - integrity sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw== - -fast-xml-parser@4.4.1: - version "4.4.1" - resolved "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz" - integrity sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw== - dependencies: - strnum "^1.0.5" - -fdir@^6.4.4: - version "6.4.5" - resolved "https://registry.npmjs.org/fdir/-/fdir-6.4.5.tgz" - integrity sha512-4BG7puHpVsIYxZUbiUE3RqGloLaSSwzYie5jvasC4LWuBWzZawynvYouhjbQKw2JuIGYdm0DzIxl8iVidKlUEw== - -fetch-blob@^2.1.1: - version "2.1.2" - resolved "https://registry.npmjs.org/fetch-blob/-/fetch-blob-2.1.2.tgz" - integrity sha512-YKqtUDwqLyfyMnmbw8XD6Q8j9i/HggKtPEI+pZ1+8bvheBu78biSmNaXWusx1TauGqtUUGx/cBb1mKdq2rLYow== - -file-entry-cache@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz" - integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== - dependencies: - flat-cache "^3.0.4" - -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz" - integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== - dependencies: - to-regex-range "^5.0.1" - -finalhandler@1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz" - integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== - 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" - -find-root@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz" - integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== - -flat-cache@^3.0.4: - version "3.2.0" - resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz" - integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw== - dependencies: - flatted "^3.2.9" - keyv "^4.5.3" - rimraf "^3.0.2" - -flatted@^2.0.0: - version "2.0.2" - resolved "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz" - integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== - -flatted@^3.2.9: - version "3.2.9" - resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz" - integrity sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ== - -follow-redirects@^1.0.0, follow-redirects@^1.15.4: - version "1.15.5" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz" - integrity sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw== - -for-each@^0.3.3, for-each@^0.3.5: - version "0.3.5" - resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz" - integrity sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg== - dependencies: - is-callable "^1.2.7" - -for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz" - integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" - integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== - -form-data@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz" - integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - mime-types "^2.1.12" - -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz" - integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== - dependencies: - map-cache "^0.2.2" - -framer-motion@^12.4.1: - version "12.4.1" - resolved "https://registry.npmjs.org/framer-motion/-/framer-motion-12.4.1.tgz" - integrity sha512-5Ijbea3topSZjadQ0hgc/TcWj2ldMZmNREM7RvAhvsThYOA1HHOA8TT1yKvMu1YXP3jWaFwoZ6Vo9Nw+DUZrzA== - dependencies: - motion-dom "^12.0.0" - motion-utils "^12.0.0" - tslib "^2.4.0" - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - -function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== - -function.prototype.name@^1.1.6, function.prototype.name@^1.1.8: - version "1.1.8" - resolved "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz" - integrity sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.3" - define-properties "^1.2.1" - functions-have-names "^1.2.3" - hasown "^2.0.2" - is-callable "^1.2.7" - -functional-red-black-tree@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" - integrity sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g== - -functions-have-names@^1.2.3: - version "1.2.3" - resolved "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz" - integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== - -gensync@^1.0.0-beta.2: - 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== - -get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.2.7, get-intrinsic@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz" - integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== - dependencies: - call-bind-apply-helpers "^1.0.2" - es-define-property "^1.0.1" - es-errors "^1.3.0" - es-object-atoms "^1.1.1" - function-bind "^1.1.2" - get-proto "^1.0.1" - gopd "^1.2.0" - has-symbols "^1.1.0" - hasown "^2.0.2" - math-intrinsics "^1.1.0" - -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.2" - resolved "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz" - integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - -get-proto@^1.0.0, get-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz" - integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== - dependencies: - dunder-proto "^1.0.1" - es-object-atoms "^1.0.0" - -get-stream@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz" - integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== - -get-symbol-description@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz" - integrity sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg== - dependencies: - call-bound "^1.0.3" - es-errors "^1.3.0" - get-intrinsic "^1.2.6" - -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz" - integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz" - integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== - dependencies: - assert-plus "^1.0.0" - -glob-parent@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz" - integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== - dependencies: - is-glob "^3.1.0" - path-dirname "^1.0.0" - -glob-parent@^5.1.2, glob-parent@~5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -glob@^7.1.1, glob@^7.1.3: - version "7.2.3" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== - 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" - -globals@^11.1.0: - version "11.12.0" - resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" - integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== - -globals@^13.6.0: - version "13.24.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz" - integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== - dependencies: - type-fest "^0.20.2" - -globals@^13.9.0: - version "13.24.0" - resolved "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz" - integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ== - dependencies: - type-fest "^0.20.2" - -globalthis@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz" - integrity sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ== - dependencies: - define-properties "^1.2.1" - gopd "^1.0.1" - -gopd@^1.0.1, gopd@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz" - integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== - -graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.2.9: - 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== - -grunt-karma@^0.12.2: - version "0.12.2" - resolved "https://registry.npmjs.org/grunt-karma/-/grunt-karma-0.12.2.tgz" - integrity sha512-houkUR8sks8uliJ5khwvV4Cf2vrxSPkvCt+w9uwOOHhDOCLZ9ZE4/MeDmC7GgSajGK+h/svpacbKFHyjNbCsng== - dependencies: - lodash "^3.10.1" - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz" - integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== - -har-validator@~5.1.3: - version "5.1.5" - resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz" - integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== - dependencies: - ajv "^6.12.3" - har-schema "^2.0.0" - -has-bigints@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" - integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== - -has-binary2@~1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz" - integrity sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw== - dependencies: - isarray "2.0.1" - -has-cors@1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz" - integrity sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== - -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - -has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz" - integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== - dependencies: - es-define-property "^1.0.0" - -has-proto@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz" - integrity sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ== - dependencies: - dunder-proto "^1.0.0" - -has-symbols@^1.0.3, has-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz" - integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== - -has-tostringtag@^1.0.0, has-tostringtag@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz" - integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== - dependencies: - has-symbols "^1.0.3" - -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz" - integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz" - integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz" - integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz" - integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - -hasown@^2.0.0, hasown@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz" - integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== - dependencies: - function-bind "^1.1.2" - -hoist-non-react-statics@^3.3.1, hoist-non-react-statics@^3.3.2: - version "3.3.2" - resolved "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz" - integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== - dependencies: - react-is "^16.7.0" - -homophones@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/homophones/-/homophones-1.0.1.tgz" - integrity sha512-fXEpWXOy5RqP2f68HFTT3ejvV+z4qV1CGw/Blz+VsYwhSTToNNdKThScJVkkzz/y9G6+3aTxL3dptRXjwn7jmQ== - dependencies: - axios "^1.4.0" - ts-node "^10.9.1" - typescript "^5.1.6" - -howler@^2.1.3: - version "2.2.4" - resolved "https://registry.npmjs.org/howler/-/howler-2.2.4.tgz" - integrity sha512-iARIBPgcQrwtEr+tALF+rapJ8qSc+Set2GJQl7xT1MQzWaVkFebdJhR3alVlSiUf5U7nAANKuj3aWpwerocD5w== - -http-errors@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" - integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== - dependencies: - depd "2.0.0" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses "2.0.1" - toidentifier "1.0.1" - -http-proxy@^1.13.0: - version "1.18.1" - resolved "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz" - integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== - dependencies: - eventemitter3 "^4.0.0" - follow-redirects "^1.0.0" - requires-port "^1.0.0" - -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz" - integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - -human-signals@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz" - integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== - -husky@^9.0.11: - version "9.1.6" - resolved "https://registry.npmjs.org/husky/-/husky-9.1.6.tgz" - integrity sha512-sqbjZKK7kf44hfdE94EoX8MZNk0n7HeW37O4YrVGCF4wzgQjp+akPAkfUK5LZ6KuR/6sqeAVuXHji+RzQgOn5A== - -hyphenate-style-name@^1.0.3: - version "1.0.4" - resolved "https://registry.npmjs.org/hyphenate-style-name/-/hyphenate-style-name-1.0.4.tgz" - integrity sha512-ygGZLjmXfPHj+ZWh6LwbC37l43MhfztxetbFCoYTM2VjkIUpeHgSNn7QIyVFj7YQ1Wl9Cbw5sholVJPzWvC2MQ== - -iconv-lite@0.4.24: - version "0.4.24" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -ignore@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - -immediate@~3.0.5: - version "3.0.6" - resolved "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz" - integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== - -immer@^10.0.3: - version "10.1.1" - resolved "https://registry.npmjs.org/immer/-/immer-10.1.1.tgz" - integrity sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw== - -immutable@^4.0.0: - version "4.3.5" - resolved "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz" - integrity sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw== - -import-fresh@^3.0.0, import-fresh@^3.2.1: - version "3.3.0" - resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" - integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== - dependencies: - parent-module "^1.0.0" - resolve-from "^4.0.0" - -imurmurhash@^0.1.4: - version "0.1.4" - resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" - integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== - -indent-string@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" - integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== - -indexof@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz" - integrity sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg== - -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@^2.0.3, inherits@~2.0.3, inherits@2, inherits@2.0.4: - version "2.0.4" - resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -internal-slot@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz" - integrity sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw== - dependencies: - es-errors "^1.3.0" - hasown "^2.0.2" - side-channel "^1.1.0" - -inversify@^5.0.1: - version "5.1.1" - resolved "https://registry.npmjs.org/inversify/-/inversify-5.1.1.tgz" - integrity sha512-j8grHGDzv1v+8T1sAQ+3boTCntFPfvxLCkNcxB1J8qA0lUN+fAlSyYd+RXKvaPRL4AGyPxViutBEJHNXOyUdFQ== - -is-accessor-descriptor@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz" - integrity sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA== - dependencies: - hasown "^2.0.0" - -is-arguments@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz" - integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== - dependencies: - call-bind "^1.0.2" - has-tostringtag "^1.0.0" - -is-array-buffer@^3.0.1, is-array-buffer@^3.0.4, is-array-buffer@^3.0.5: - version "3.0.5" - resolved "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz" - integrity sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.3" - get-intrinsic "^1.2.6" - -is-arrayish@^0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== - -is-async-function@^2.0.0: - version "2.1.1" - resolved "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz" - integrity sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ== - dependencies: - async-function "^1.0.0" - call-bound "^1.0.3" - get-proto "^1.0.1" - has-tostringtag "^1.0.2" - safe-regex-test "^1.1.0" - -is-bigint@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz" - integrity sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ== - dependencies: - has-bigints "^1.0.2" - -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz" - integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== - dependencies: - binary-extensions "^1.0.0" - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-boolean-object@^1.2.1: - version "1.2.2" - resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz" - integrity sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A== - dependencies: - call-bound "^1.0.3" - has-tostringtag "^1.0.2" - -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-callable@^1.2.7: - version "1.2.7" - resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz" - integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== - -is-core-module@^2.13.0, is-core-module@^2.13.1: - version "2.13.1" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz" - integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== - dependencies: - hasown "^2.0.0" - -is-data-descriptor@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz" - integrity sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw== - dependencies: - hasown "^2.0.0" - -is-data-view@^1.0.1, is-data-view@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz" - integrity sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw== - dependencies: - call-bound "^1.0.2" - get-intrinsic "^1.2.6" - is-typed-array "^1.1.13" - -is-date-object@^1.0.5, is-date-object@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz" - integrity sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg== - dependencies: - call-bound "^1.0.2" - has-tostringtag "^1.0.2" - -is-descriptor@^0.1.0: - version "0.1.7" - resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz" - integrity sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg== - dependencies: - is-accessor-descriptor "^1.0.1" - is-data-descriptor "^1.0.1" - -is-descriptor@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz" - integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw== - dependencies: - is-accessor-descriptor "^1.0.1" - is-data-descriptor "^1.0.1" - -is-descriptor@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz" - integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw== - dependencies: - is-accessor-descriptor "^1.0.1" - is-data-descriptor "^1.0.1" - -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" - integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - -is-extglob@^2.1.0, is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== - -is-finalizationregistry@^1.1.0: - version "1.1.1" - resolved "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz" - integrity sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg== - dependencies: - call-bound "^1.0.3" - -is-fullwidth-code-point@^3.0.0: - 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== - -is-generator-function@^1.0.10: - version "1.1.0" - resolved "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz" - integrity sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ== - dependencies: - call-bound "^1.0.3" - get-proto "^1.0.0" - has-tostringtag "^1.0.2" - safe-regex-test "^1.1.0" - -is-glob@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz" - integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== - dependencies: - is-extglob "^2.1.0" - -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: - version "4.0.3" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" - integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== - dependencies: - is-extglob "^2.1.1" - -is-in-browser@^1.0.2, is-in-browser@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/is-in-browser/-/is-in-browser-1.1.3.tgz" - integrity sha512-FeXIBgG/CPGd/WUxuEyvgGTEfwiG9Z4EKGxjNMRqviiIIfsmgrpnHLffEDdwUHqNva1VEW91o3xBT/m8Elgl9g== - -is-lite@^0.8.2: - version "0.8.2" - resolved "https://registry.npmjs.org/is-lite/-/is-lite-0.8.2.tgz" - integrity sha512-JZfH47qTsslwaAsqbMI3Q6HNNjUuq6Cmzzww50TdP5Esb6e1y2sK2UAaZZuzfAzpoI2AkxoPQapZdlDuP6Vlsw== - -is-lite@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/is-lite/-/is-lite-1.2.1.tgz" - integrity sha512-pgF+L5bxC+10hLBgf6R2P4ZZUBOQIIacbdo8YvuCP8/JvsWxG7aZ9p10DYuLtifFci4l3VITphhMlMV4Y+urPw== - -is-map@^2.0.2, is-map@^2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz" - integrity sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw== - -is-negative-zero@^2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz" - integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== - -is-number-object@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz" - integrity sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw== - dependencies: - call-bound "^1.0.3" - has-tostringtag "^1.0.2" - -is-number@^0.1.1: - version "0.1.1" - resolved "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz" - integrity sha512-la5kPULwIgkSSaZj9w7/A1uHqOBAgOhDUKQ5CkfL8LZ4Si6r4+2D0hI6b4o60MW4Uj2yNJARWIZUDPxlvOYQcw== - -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz" - integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== - dependencies: - kind-of "^3.0.2" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz" - integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg== - -is-plain-object@^2.0.3, is-plain-object@^2.0.4: - 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== - dependencies: - isobject "^3.0.1" - -is-regex@^1.1.4, is-regex@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz" - integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g== - dependencies: - call-bound "^1.0.2" - gopd "^1.2.0" - has-tostringtag "^1.0.2" - hasown "^2.0.2" - -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz" - integrity sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA== - -is-set@^2.0.2, is-set@^2.0.3: - version "2.0.3" - resolved "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz" - integrity sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg== - -is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz" - integrity sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A== - dependencies: - call-bound "^1.0.3" - -is-stream@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz" - integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== - -is-string@^1.0.7, is-string@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz" - integrity sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA== - dependencies: - call-bound "^1.0.3" - has-tostringtag "^1.0.2" - -is-symbol@^1.0.4, is-symbol@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz" - integrity sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w== - dependencies: - call-bound "^1.0.2" - has-symbols "^1.1.0" - safe-regex-test "^1.1.0" - -is-typed-array@^1.1.13, is-typed-array@^1.1.14, is-typed-array@^1.1.15: - version "1.1.15" - resolved "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz" - integrity sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ== - dependencies: - which-typed-array "^1.1.16" - -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" - integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== - -is-weakmap@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz" - integrity sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w== - -is-weakref@^1.0.2, is-weakref@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz" - integrity sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew== - dependencies: - call-bound "^1.0.3" - -is-weakset@^2.0.3: - version "2.0.4" - resolved "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz" - integrity sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ== - dependencies: - call-bound "^1.0.3" - get-intrinsic "^1.2.6" - -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - -isarray@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz" - integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== - -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - -isarray@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - -isarray@2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz" - integrity sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ== - -isbinaryfile@^3.0.0: - version "3.0.3" - resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz" - integrity sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw== - dependencies: - buffer-alloc "^1.2.0" - -isexe@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" - integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== - -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz" - integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" - integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" - integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== - -iterator.prototype@^1.1.4: - version "1.1.5" - resolved "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.5.tgz" - integrity sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g== - dependencies: - define-data-property "^1.1.4" - es-object-atoms "^1.0.0" - get-intrinsic "^1.2.6" - get-proto "^1.0.0" - has-symbols "^1.1.0" - set-function-name "^2.0.2" - -jest-diff@^29.4.3: - version "29.4.3" - resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-29.4.3.tgz" - integrity sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA== - dependencies: - chalk "^4.0.0" - diff-sequences "^29.4.3" - jest-get-type "^29.4.3" - pretty-format "^29.4.3" - -jest-get-type@^29.4.3: - version "29.4.3" - resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz" - integrity sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg== - -jest-matcher-utils@^29.4.3: - version "29.4.3" - resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.4.3.tgz" - integrity sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg== - dependencies: - chalk "^4.0.0" - jest-diff "^29.4.3" - jest-get-type "^29.4.3" - pretty-format "^29.4.3" - -jest-message-util@^29.4.3: - version "29.4.3" - resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.4.3.tgz" - integrity sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw== - dependencies: - "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.4.3" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.9" - micromatch "^4.0.4" - pretty-format "^29.4.3" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-util@^29.4.3: - version "29.4.3" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.4.3.tgz" - integrity sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q== - dependencies: - "@jest/types" "^29.4.3" - "@types/node" "*" - chalk "^4.0.0" - ci-info "^3.2.0" - graceful-fs "^4.2.9" - picomatch "^2.2.3" - -"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" - integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== - -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz" - integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== - -jsesc@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz" - integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== - -json-buffer@3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz" - integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== - -json-parse-even-better-errors@^2.3.0: - 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== - -json-schema-traverse@^0.4.1: - 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== - -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - -json-schema@0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz" - integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== - -json-stable-stringify-without-jsonify@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" - integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== - -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" - integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== - -json5@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz" - integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== - dependencies: - minimist "^1.2.0" - -json5@^2.2.3: - version "2.2.3" - resolved "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz" - integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== - -jsonld-signatures@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/jsonld-signatures/-/jsonld-signatures-6.0.0.tgz" - integrity sha512-GIh5DCZ5g5vQBAFcjSDHmYyTaD/fYh5KwlAiKgx83VRzcQNNgzeG7DsLdXcgyCxEai9qIM9u2frZAInKDN5+og== - dependencies: - base64url "^3.0.1" - crypto-ld "^3.7.0" - jsonld "^2.0.2" - node-forge "^0.10.0" - security-context "^4.0.0" - serialize-error "^5.0.0" - -jsonld@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/jsonld/-/jsonld-2.0.2.tgz" - integrity sha512-/TQzRe75/3h2khu57IUojha5oat+M82bm8RYw0jLhlmmPrW/kTWAZ9nGzKPfZWnPYnVVJJMQVc/pU8HCmpv9xg== - dependencies: - canonicalize "^1.0.1" - lru-cache "^5.1.1" - rdf-canonize "^1.0.2" - request "^2.88.0" - semver "^6.3.0" - xmldom "0.1.19" - -jsonld@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/jsonld/-/jsonld-5.2.0.tgz" - integrity sha512-JymgT6Xzk5CHEmHuEyvoTNviEPxv6ihLWSPu1gFdtjSAyM6cFqNrv02yS/SIur3BBIkCf0HjizRc24d8/FfQKw== - dependencies: - "@digitalbazaar/http-client" "^1.1.0" - canonicalize "^1.0.1" - lru-cache "^6.0.0" - rdf-canonize "^3.0.0" - -jsprim@^1.2.2: - version "1.4.2" - resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz" - integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.4.0" - verror "1.10.0" - -jss-plugin-camel-case@^10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss-plugin-camel-case/-/jss-plugin-camel-case-10.10.0.tgz" - integrity sha512-z+HETfj5IYgFxh1wJnUAU8jByI48ED+v0fuTuhKrPR+pRBYS2EDwbusU8aFOpCdYhtRc9zhN+PJ7iNE8pAWyPw== - dependencies: - "@babel/runtime" "^7.3.1" - hyphenate-style-name "^1.0.3" - jss "10.10.0" - -jss-plugin-default-unit@^10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss-plugin-default-unit/-/jss-plugin-default-unit-10.10.0.tgz" - integrity sha512-SvpajxIECi4JDUbGLefvNckmI+c2VWmP43qnEy/0eiwzRUsafg5DVSIWSzZe4d2vFX1u9nRDP46WCFV/PXVBGQ== - dependencies: - "@babel/runtime" "^7.3.1" - jss "10.10.0" - -jss-plugin-global@^10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss-plugin-global/-/jss-plugin-global-10.10.0.tgz" - integrity sha512-icXEYbMufiNuWfuazLeN+BNJO16Ge88OcXU5ZDC2vLqElmMybA31Wi7lZ3lf+vgufRocvPj8443irhYRgWxP+A== - dependencies: - "@babel/runtime" "^7.3.1" - jss "10.10.0" - -jss-plugin-nested@^10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss-plugin-nested/-/jss-plugin-nested-10.10.0.tgz" - integrity sha512-9R4JHxxGgiZhurDo3q7LdIiDEgtA1bTGzAbhSPyIOWb7ZubrjQe8acwhEQ6OEKydzpl8XHMtTnEwHXCARLYqYA== - dependencies: - "@babel/runtime" "^7.3.1" - jss "10.10.0" - tiny-warning "^1.0.2" - -jss-plugin-props-sort@^10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss-plugin-props-sort/-/jss-plugin-props-sort-10.10.0.tgz" - integrity sha512-5VNJvQJbnq/vRfje6uZLe/FyaOpzP/IH1LP+0fr88QamVrGJa0hpRRyAa0ea4U/3LcorJfBFVyC4yN2QC73lJg== - dependencies: - "@babel/runtime" "^7.3.1" - jss "10.10.0" - -jss-plugin-rule-value-function@^10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.10.0.tgz" - integrity sha512-uEFJFgaCtkXeIPgki8ICw3Y7VMkL9GEan6SqmT9tqpwM+/t+hxfMUdU4wQ0MtOiMNWhwnckBV0IebrKcZM9C0g== - dependencies: - "@babel/runtime" "^7.3.1" - jss "10.10.0" - tiny-warning "^1.0.2" - -jss-plugin-vendor-prefixer@^10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.10.0.tgz" - integrity sha512-UY/41WumgjW8r1qMCO8l1ARg7NHnfRVWRhZ2E2m0DMYsr2DD91qIXLyNhiX83hHswR7Wm4D+oDYNC1zWCJWtqg== - dependencies: - "@babel/runtime" "^7.3.1" - css-vendor "^2.0.8" - jss "10.10.0" - -jss@^10.10.0, jss@10.10.0: - version "10.10.0" - resolved "https://registry.npmjs.org/jss/-/jss-10.10.0.tgz" - integrity sha512-cqsOTS7jqPsPMjtKYDUpdFC0AbhYFLTcuGRqymgmdJIeQ8cH7+AgX7YSgQy79wXloZq2VvATYxUOUQEvS1V/Zw== - dependencies: - "@babel/runtime" "^7.3.1" - csstype "^3.0.2" - is-in-browser "^1.1.3" - tiny-warning "^1.0.2" - -"jsx-ast-utils@^2.4.1 || ^3.0.0", jsx-ast-utils@^3.3.5: - version "3.3.5" - resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz" - integrity sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ== - dependencies: - array-includes "^3.1.6" - array.prototype.flat "^1.3.1" - object.assign "^4.1.4" - object.values "^1.1.6" - -jszip@^3.7.1: - version "3.10.1" - resolved "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz" - integrity sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g== - dependencies: - lie "~3.3.0" - pako "~1.0.2" - readable-stream "~2.3.6" - setimmediate "^1.0.5" - -jwt-decode@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/jwt-decode/-/jwt-decode-4.0.0.tgz" - integrity sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA== - -karma@^3.0.0: - version "3.1.4" - resolved "https://registry.npmjs.org/karma/-/karma-3.1.4.tgz" - integrity sha512-31Vo8Qr5glN+dZEVIpnPCxEGleqE0EY6CtC2X9TagRV3rRQ3SNrvfhddICkJgUK3AgqpeKSZau03QumTGhGoSw== - dependencies: - bluebird "^3.3.0" - body-parser "^1.16.1" - chokidar "^2.0.3" - colors "^1.1.0" - combine-lists "^1.0.0" - connect "^3.6.0" - core-js "^2.2.0" - di "^0.0.1" - dom-serialize "^2.2.0" - expand-braces "^0.1.1" - flatted "^2.0.0" - glob "^7.1.1" - graceful-fs "^4.1.2" - http-proxy "^1.13.0" - isbinaryfile "^3.0.0" - lodash "^4.17.5" - log4js "^3.0.0" - mime "^2.3.1" - minimatch "^3.0.2" - optimist "^0.6.1" - qjobs "^1.1.4" - range-parser "^1.2.0" - rimraf "^2.6.0" - safe-buffer "^5.0.1" - socket.io "2.1.1" - source-map "^0.6.1" - tmp "0.0.33" - useragent "2.3.0" - -keyv@^4.5.3: - version "4.5.4" - resolved "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz" - integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw== - dependencies: - json-buffer "3.0.1" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz" - integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz" - integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== - dependencies: - is-buffer "^1.1.5" - -kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - -ky-universal@^0.8.2: - version "0.8.2" - resolved "https://registry.npmjs.org/ky-universal/-/ky-universal-0.8.2.tgz" - integrity sha512-xe0JaOH9QeYxdyGLnzUOVGK4Z6FGvDVzcXFTdrYA1f33MZdEa45sUDaMBy98xQMcsd2XIBrTXRrRYnegcSdgVQ== - dependencies: - abort-controller "^3.0.0" - node-fetch "3.0.0-beta.9" - -ky@^0.25.1: - version "0.25.1" - resolved "https://registry.npmjs.org/ky/-/ky-0.25.1.tgz" - integrity sha512-PjpCEWlIU7VpiMVrTwssahkYXX1by6NCT0fhTUX34F3DTinARlgMpriuroolugFPcMgpPWrOW4mTb984Qm1RXA== - -language-subtag-registry@^0.3.20: - version "0.3.22" - resolved "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz" - integrity sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w== - -language-tags@^1.0.9: - version "1.0.9" - resolved "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz" - integrity sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA== - dependencies: - language-subtag-registry "^0.3.20" - -levn@^0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" - integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== - dependencies: - prelude-ls "^1.2.1" - type-check "~0.4.0" - -lie@~3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz" - integrity sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ== - dependencies: - immediate "~3.0.5" - -lines-and-columns@^1.1.6: - version "1.2.4" - resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz" - integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== - -lint-staged@^11.2.6: - version "11.2.6" - resolved "https://registry.npmjs.org/lint-staged/-/lint-staged-11.2.6.tgz" - integrity sha512-Vti55pUnpvPE0J9936lKl0ngVeTdSZpEdTNhASbkaWX7J5R9OEifo1INBGQuGW4zmy6OG+TcWPJ3m5yuy5Q8Tg== - dependencies: - cli-truncate "2.1.0" - colorette "^1.4.0" - commander "^8.2.0" - cosmiconfig "^7.0.1" - debug "^4.3.2" - enquirer "^2.3.6" - execa "^5.1.1" - listr2 "^3.12.2" - micromatch "^4.0.4" - normalize-path "^3.0.0" - please-upgrade-node "^3.2.0" - string-argv "0.3.1" - stringify-object "3.3.0" - supports-color "8.1.1" - -listr2@^3.12.2: - version "3.14.0" - resolved "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz" - integrity sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g== - dependencies: - cli-truncate "^2.1.0" - colorette "^2.0.16" - log-update "^4.0.0" - p-map "^4.0.0" - rfdc "^1.3.0" - rxjs "^7.5.1" - through "^2.3.8" - wrap-ansi "^7.0.0" - -lodash.merge@^4.6.2: - version "4.6.2" - resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" - integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== - -lodash.truncate@^4.4.2: - version "4.4.2" - resolved "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz" - integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== - -lodash@^3.10.1: - version "3.10.1" - resolved "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz" - integrity sha512-9mDDwqVIma6OZX79ZlDACZl8sBm0TEnkf99zV3iMA4GzkIT/9hiqP5mY0HoT1iNLCrKc/R1HByV+yJfRWVJryQ== - -lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.5, lodash@^4.5.0: - version "4.17.21" - resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - -log-update@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz" - integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== - dependencies: - ansi-escapes "^4.3.0" - cli-cursor "^3.1.0" - slice-ansi "^4.0.0" - wrap-ansi "^6.2.0" - -log4js@^3.0.0: - version "3.0.6" - resolved "https://registry.npmjs.org/log4js/-/log4js-3.0.6.tgz" - integrity sha512-ezXZk6oPJCWL483zj64pNkMuY/NcRX5MPiB0zE6tjZM137aeusrOnW1ecxgF9cmwMWkBMhjteQxBPoZBh9FDxQ== - dependencies: - circular-json "^0.5.5" - date-format "^1.2.0" - debug "^3.1.0" - rfdc "^1.1.2" - streamroller "0.7.0" - -loose-envify@^1.1.0, loose-envify@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== - dependencies: - js-tokens "^3.0.0 || ^4.0.0" - -lru-cache@^5.1.1: - version "5.1.1" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz" - integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== - dependencies: - yallist "^3.0.2" - -lru-cache@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" - integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== - dependencies: - yallist "^4.0.0" - -lru-cache@4.1.x: - version "4.1.5" - resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - -lz-string@^1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz" - integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ== - -make-error@^1.1.1: - version "1.3.6" - resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" - integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz" - integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz" - integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== - dependencies: - object-visit "^1.0.0" - -math-intrinsics@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz" - integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" - integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== - -memoize-one@^6.0.0: - version "6.0.0" - resolved "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz" - integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw== - -"memoize-one@>=3.1.1 <6": - version "5.2.1" - resolved "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz" - integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q== - -merge-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz" - integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== - -metaphone@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/metaphone/-/metaphone-2.0.1.tgz" - integrity sha512-YR9RHhgIjoS77yhz84De0ffUKFGTmF58a+xXFNkbHSK/aBPznGKhjR2p29rYSPs0t885/AKKZCOdUn7N6rpKiA== - -micromatch@^3.1.10: - version "3.1.10" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - -micromatch@^4.0.4: - version "4.0.5" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== - dependencies: - braces "^3.0.2" - picomatch "^2.3.1" - -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime@^2.3.1: - version "2.6.0" - resolved "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz" - integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== - -mimic-fn@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" - integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== - -min-indent@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz" - integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== - -minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -minimist@^1.2.0, minimist@^1.2.6: - version "1.2.8" - resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz" - integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== - -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz" - integrity sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw== - -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mkdirp@^0.5.1: - version "0.5.6" - resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz" - integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== - dependencies: - minimist "^1.2.6" - -motion-dom@^12.0.0: - version "12.0.0" - resolved "https://registry.npmjs.org/motion-dom/-/motion-dom-12.0.0.tgz" - integrity sha512-CvYd15OeIR6kHgMdonCc1ihsaUG4MYh/wrkz8gZ3hBX/uamyZCXN9S9qJoYF03GqfTt7thTV/dxnHYX4+55vDg== - dependencies: - motion-utils "^12.0.0" - -motion-utils@^12.0.0: - version "12.0.0" - resolved "https://registry.npmjs.org/motion-utils/-/motion-utils-12.0.0.tgz" - integrity sha512-MNFiBKbbqnmvOjkPyOKgHUp3Q6oiokLkI1bEwm5QA28cxMZrv0CbbBGDNmhF6DIXsi1pCQBSs0dX8xjeER1tmA== - -ms@^2.1.1, ms@2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" - integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== - -nanoid@^3.3.11: - version "3.3.11" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz" - integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== - -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -natural-compare@^1.4.0: - version "1.4.0" - resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" - integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== - -negotiator@0.6.3: - version "0.6.3" - resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz" - integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== - -node-fetch@2.6.5: - version "2.6.5" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.5.tgz" - integrity sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ== - dependencies: - whatwg-url "^5.0.0" - -node-fetch@3.0.0-beta.9: - version "3.0.0-beta.9" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-3.0.0-beta.9.tgz" - integrity sha512-RdbZCEynH2tH46+tj0ua9caUHVWrd/RHnRfvly2EVdqGmI3ndS1Vn/xjm5KuGejDt2RNDQsVRLPNd2QPwcewVg== - dependencies: - data-uri-to-buffer "^3.0.1" - fetch-blob "^2.1.1" - -node-forge@^0.10.0, node-forge@~0.10.0: - version "0.10.0" - resolved "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz" - integrity sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA== - -node-gyp-build@^4.3.0: - 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== - -node-releases@^2.0.18: - version "2.0.18" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz" - integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== - -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" - integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== - dependencies: - remove-trailing-separator "^1.0.1" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -npm-run-path@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz" - integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== - dependencies: - path-key "^3.0.0" - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - -object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== - -object-component@0.0.3: - version "0.0.3" - resolved "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz" - integrity sha512-S0sN3agnVh2SZNEIGc0N1X4Z5K0JeFbGBrnuZpsxuUh5XLF0BnvWkMjRXo/zGKLd/eghvNIKcx1pQkmUjXIyrA== - -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz" - integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-inspect@^1.13.3, object-inspect@^1.13.4: - version "1.13.4" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz" - integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== - -object-is@^1.1.5: - version "1.1.5" - resolved "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz" - integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw== - dependencies: - call-bind "^1.0.2" - define-properties "^1.1.3" - -object-keys@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" - integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz" - integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== - dependencies: - isobject "^3.0.0" - -object.assign@^4.1.4, object.assign@^4.1.7: - version "4.1.7" - resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz" - integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.3" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - has-symbols "^1.1.0" - object-keys "^1.1.1" - -object.entries@^1.1.7, object.entries@^1.1.9: - version "1.1.9" - resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz" - integrity sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.4" - define-properties "^1.2.1" - es-object-atoms "^1.1.1" - -object.fromentries@^2.0.7, object.fromentries@^2.0.8: - version "2.0.8" - resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz" - integrity sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-abstract "^1.23.2" - es-object-atoms "^1.0.0" - -object.groupby@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz" - integrity sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ== - dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" - get-intrinsic "^1.2.1" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz" - integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== - dependencies: - isobject "^3.0.1" - -object.values@^1.1.6, object.values@^1.1.7, object.values@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz" - integrity sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.3" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz" - integrity sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww== - dependencies: - ee-first "1.1.1" - -on-finished@2.4.1: - version "2.4.1" - resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz" - integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== - dependencies: - ee-first "1.1.1" - -once@^1.3.0: - version "1.4.0" - resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" - integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== - dependencies: - wrappy "1" - -onetime@^5.1.0, onetime@^5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" - integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== - dependencies: - mimic-fn "^2.1.0" - -optimist@^0.6.1: - version "0.6.1" - resolved "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz" - integrity sha512-snN4O4TkigujZphWLN0E//nQmm7790RYaE53DdL7ZYwee2D8DDo9/EyYiKUfN3rneWUjhJnueija3G9I2i0h3g== - dependencies: - minimist "~0.0.1" - wordwrap "~0.0.2" - -optionator@^0.9.1: - version "0.9.3" - resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz" - integrity sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg== - dependencies: - "@aashutoshrathi/word-wrap" "^1.2.3" - deep-is "^0.1.3" - fast-levenshtein "^2.0.6" - levn "^0.4.1" - prelude-ls "^1.2.1" - type-check "^0.4.0" - -os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" - integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== - -own-keys@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz" - integrity sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg== - dependencies: - get-intrinsic "^1.2.6" - object-keys "^1.1.1" - safe-push-apply "^1.0.0" - -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - -pako@~1.0.2: - version "1.0.11" - resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz" - integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== - -parent-module@^1.0.0: - 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== - dependencies: - callsites "^3.0.0" - -parse-json@^5.0.0: - version "5.2.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" - integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== - 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" - -parseqs@0.0.5: - version "0.0.5" - resolved "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz" - integrity sha512-B3Nrjw2aL7aI4TDujOzfA4NsEc4u1lVcIRE0xesutH8kjeWF70uk+W5cBlIQx04zUH9NTBvuN36Y9xLRPK6Jjw== - dependencies: - better-assert "~1.0.0" - -parseuri@0.0.5: - version "0.0.5" - resolved "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz" - integrity sha512-ijhdxJu6l5Ru12jF0JvzXVPvsC+VibqeaExlNoMhWN6VQ79PGjkmc7oA4W1lp00sFkNyj0fx6ivPLdV51/UMog== - dependencies: - better-assert "~1.0.0" - -parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== - -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz" - integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== - -path-dirname@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz" - integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== - -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - -path-key@^3.0.0, path-key@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" - integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== - -path-parse@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== - -path-type@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" - integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz" - integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== - -picocolors@^1.0.0, picocolors@^1.1.0, picocolors@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz" - integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== - -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: - version "2.3.1" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -picomatch@^4.0.2: - version "4.0.2" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz" - integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== - -please-upgrade-node@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz" - integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== - dependencies: - semver-compare "^1.0.0" - -popper.js@^1.16.0: - version "1.16.1" - resolved "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz" - integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== - -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz" - integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== - -possible-typed-array-names@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz" - integrity sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg== - -postcss@^8.5.3: - version "8.5.4" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.4.tgz" - integrity sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w== - dependencies: - nanoid "^3.3.11" - picocolors "^1.1.1" - source-map-js "^1.2.1" - -prelude-ls@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" - integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== - -prettier-linter-helpers@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz" - integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== - dependencies: - fast-diff "^1.1.2" - -prettier@^2.8.8: - version "2.8.8" - resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz" - integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== - -pretty-format@^27.0.2: - version "27.5.1" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz" - integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== - dependencies: - ansi-regex "^5.0.1" - ansi-styles "^5.0.0" - react-is "^17.0.1" - -pretty-format@^29.0.0: - version "29.4.3" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz" - integrity sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA== - dependencies: - "@jest/schemas" "^29.4.3" - ansi-styles "^5.0.0" - react-is "^18.0.0" - -pretty-format@^29.4.3: - version "29.4.3" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz" - integrity sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA== - dependencies: - "@jest/schemas" "^29.4.3" - ansi-styles "^5.0.0" - react-is "^18.0.0" - -process-nextick-args@~2.0.0: - 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== - -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - -prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: - version "15.8.1" - resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz" - integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== - dependencies: - loose-envify "^1.4.0" - object-assign "^4.1.1" - react-is "^16.13.1" - -proxy-from-env@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz" - integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== - -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" - integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== - -psl@^1.1.28: - version "1.9.0" - resolved "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz" - integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== - -punycode@^2.1.0, punycode@^2.1.1: - version "2.3.1" - resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz" - integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== - -qjobs@^1.1.4: - 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== - -qs@^6.9.7, qs@6.13.0: - version "6.13.0" - resolved "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz" - integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== - dependencies: - side-channel "^1.0.6" - -qs@~6.5.2: - version "6.5.3" - resolved "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz" - integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== - -range-parser@^1.2.0: - version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -raw-body@2.5.2: - 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== - dependencies: - bytes "3.1.2" - http-errors "2.0.0" - iconv-lite "0.4.24" - unpipe "1.0.0" - -rdf-canonize@^1.0.2: - version "1.2.0" - resolved "https://registry.npmjs.org/rdf-canonize/-/rdf-canonize-1.2.0.tgz" - integrity sha512-MQdcRDz4+82nUrEb3hNQangBDpmep15uMmnWclGi/1KS0bNVc8oHpoNI0PFLHZsvwgwRzH31bO1JAScqUAstvw== - dependencies: - node-forge "^0.10.0" - semver "^6.3.0" - -rdf-canonize@^3.0.0: - version "3.4.0" - resolved "https://registry.npmjs.org/rdf-canonize/-/rdf-canonize-3.4.0.tgz" - integrity sha512-fUeWjrkOO0t1rg7B2fdyDTvngj+9RlUyL92vOdiB7c0FPguWVsniIMjEtHH+meLBO9rzkUlUzBVXgWrjI8P9LA== - dependencies: - setimmediate "^1.0.5" - -react-audio-analyser@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/react-audio-analyser/-/react-audio-analyser-1.0.0.tgz" - integrity sha512-wFxqgIhrjkohNWxdzN3uD0s7tCZRiGWIUmE4hzR0goWnY0NRmPvJkKZuXTU48WIvewVYe4ZksmPGyaFLAuO86Q== - -react-audio-player@^0.17.0: - version "0.17.0" - resolved "https://registry.npmjs.org/react-audio-player/-/react-audio-player-0.17.0.tgz" - integrity sha512-aCZgusPxA9HK7rLZcTdhTbBH9l6do9vn3NorgoDZRxRxJlOy9uZWzPaKjd7QdcuP2vXpxGA/61JMnnOEY7NXeA== - dependencies: - prop-types "^15.7.2" - -react-confetti@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/react-confetti/-/react-confetti-6.1.0.tgz" - integrity sha512-7Ypx4vz0+g8ECVxr88W9zhcQpbeujJAVqL14ZnXJ3I23mOI9/oBVTQ3dkJhUmB0D6XOtCZEM6N0Gm9PMngkORw== - dependencies: - tween-functions "^1.2.0" - -react-dom@^18.2.0: - version "18.3.1" - resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz" - integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== - dependencies: - loose-envify "^1.1.0" - scheduler "^0.23.2" - -react-floater@^0.7.9: - version "0.7.9" - resolved "https://registry.npmjs.org/react-floater/-/react-floater-0.7.9.tgz" - integrity sha512-NXqyp9o8FAXOATOEo0ZpyaQ2KPb4cmPMXGWkx377QtJkIXHlHRAGer7ai0r0C1kG5gf+KJ6Gy+gdNIiosvSicg== - dependencies: - deepmerge "^4.3.1" - is-lite "^0.8.2" - popper.js "^1.16.0" - prop-types "^15.8.1" - tree-changes "^0.9.1" - -react-infinite-scroll-component@^6.1.0: - version "6.1.0" - resolved "https://registry.npmjs.org/react-infinite-scroll-component/-/react-infinite-scroll-component-6.1.0.tgz" - integrity sha512-SQu5nCqy8DxQWpnUVLx7V7b7LcA37aM7tvoWjTLZp1dk6EJibM5/4EJKzOnl07/BsM1Y40sKLuqjCwwH/xV0TQ== - dependencies: - throttle-debounce "^2.1.0" - -react-innertext@^1.1.5: - version "1.1.5" - resolved "https://registry.npmjs.org/react-innertext/-/react-innertext-1.1.5.tgz" - integrity sha512-PWAqdqhxhHIv80dT9znP2KvS+hfkbRovFp4zFYHFFlOoQLRiawIic81gKb3U1wEyJZgMwgs3JoLtwryASRWP3Q== - -react-is@^16.13.1: - version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-is@^16.7.0: - version "16.13.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" - integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== - -react-is@^17.0.1: - version "17.0.2" - resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz" - integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== - -react-is@^18.0.0, react-is@^18.2.0: - version "18.2.0" - resolved "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz" - integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== - -react-is@^18.3.1: - version "18.3.1" - resolved "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz" - integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== - -react-joyride@^2.9.3: - version "2.9.3" - resolved "https://registry.npmjs.org/react-joyride/-/react-joyride-2.9.3.tgz" - integrity sha512-1+Mg34XK5zaqJ63eeBhqdbk7dlGCFp36FXwsEvgpjqrtyywX2C6h9vr3jgxP0bGHCw8Ilsp/nRDzNVq6HJ3rNw== - dependencies: - "@gilbarbara/deep-equal" "^0.3.1" - deep-diff "^1.0.2" - deepmerge "^4.3.1" - is-lite "^1.2.1" - react-floater "^0.7.9" - react-innertext "^1.1.5" - react-is "^16.13.1" - scroll "^3.0.1" - scrollparent "^2.1.0" - tree-changes "^0.11.2" - type-fest "^4.27.0" - -react-lifecycles-compat@^3.0.4: - version "3.0.4" - resolved "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz" - integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== - -react-redux@^9.1.0: - version "9.1.2" - resolved "https://registry.npmjs.org/react-redux/-/react-redux-9.1.2.tgz" - integrity sha512-0OA4dhM1W48l3uzmv6B7TXPCGmokUU4p1M44DGN2/D9a1FjVPukVjER1PcPX97jIg6aUeLq1XJo1IpfbgULn0w== - dependencies: - "@types/use-sync-external-store" "^0.0.3" - use-sync-external-store "^1.0.0" - -react-refresh@^0.17.0: - version "0.17.0" - resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz" - integrity sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ== - -react-router-dom@^6.0.2: - version "6.8.1" - resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.8.1.tgz" - integrity sha512-67EXNfkQgf34P7+PSb6VlBuaacGhkKn3kpE51+P6zYSG2kiRoumXEL6e27zTa9+PGF2MNXbgIUHTVlleLbIcHQ== - dependencies: - "@remix-run/router" "1.3.2" - react-router "6.8.1" - -react-router@6.8.1: - version "6.8.1" - resolved "https://registry.npmjs.org/react-router/-/react-router-6.8.1.tgz" - integrity sha512-Jgi8BzAJQ8MkPt8ipXnR73rnD7EmZ0HFFb7jdQU24TynGW1Ooqin2KVDN9voSC+7xhqbbCd2cjGUepb6RObnyg== - dependencies: - "@remix-run/router" "1.3.2" - -react-speech-recognition@^3.10.0: - version "3.10.0" - resolved "https://registry.npmjs.org/react-speech-recognition/-/react-speech-recognition-3.10.0.tgz" - integrity sha512-EVSr4Ik8l9urwdPiK2r0+ADrLyDDrjB0qBRdUWO+w2MfwEBrj6NuRmy1GD3x7BU/V6/hab0pl8Lupen0zwlJyw== - -react-transition-group@^4.4.5: - version "4.4.5" - resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz" - integrity sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g== - dependencies: - "@babel/runtime" "^7.5.5" - dom-helpers "^5.0.1" - loose-envify "^1.4.0" - prop-types "^15.6.2" - -react-virtualized-auto-sizer@^1.0.6: - version "1.0.21" - resolved "https://registry.npmjs.org/react-virtualized-auto-sizer/-/react-virtualized-auto-sizer-1.0.21.tgz" - integrity sha512-RedZxj452+ITLfqIrR02BjvCaXV63YVIcVrvmruDZXFpJGazg4gHNs1AShPGVLvEuLGZdZ9AtkGKhWvzEujL8g== - -react-virtualized@^9.22.3: - version "9.22.5" - resolved "https://registry.npmjs.org/react-virtualized/-/react-virtualized-9.22.5.tgz" - integrity sha512-YqQMRzlVANBv1L/7r63OHa2b0ZsAaDp1UhVNEdUaXI8A5u6hTpA5NYtUueLH2rFuY/27mTGIBl7ZhqFKzw18YQ== - dependencies: - "@babel/runtime" "^7.7.2" - clsx "^1.0.4" - dom-helpers "^5.1.3" - loose-envify "^1.4.0" - prop-types "^15.7.2" - react-lifecycles-compat "^3.0.4" - -react-window@^1.8.6: - version "1.8.10" - resolved "https://registry.npmjs.org/react-window/-/react-window-1.8.10.tgz" - integrity sha512-Y0Cx+dnU6NLa5/EvoHukUD0BklJ8qITCtVEPY1C/nL8wwoZ0b5aEw8Ff1dOVHw7fCzMt55XfJDd8S8W8LCaUCg== - dependencies: - "@babel/runtime" "^7.0.0" - memoize-one ">=3.1.1 <6" - -react@^18.2.0: - version "18.3.1" - resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz" - integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== - dependencies: - loose-envify "^1.1.0" - -readable-stream@^2.0.2, readable-stream@^2.3.0, readable-stream@~2.3.6: - version "2.3.8" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz" - integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== - 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" - -readdirp@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz" - integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== - dependencies: - graceful-fs "^4.1.11" - micromatch "^3.1.10" - readable-stream "^2.0.2" - -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== - dependencies: - picomatch "^2.2.1" - -recordrtc@^5.6.2: - version "5.6.2" - resolved "https://registry.npmjs.org/recordrtc/-/recordrtc-5.6.2.tgz" - integrity sha512-1QNKKNtl7+KcwD1lyOgP3ZlbiJ1d0HtXnypUy7yq49xEERxk31PHvE9RCciDrulPCY7WJ+oz0R9hpNxgsIurGQ== - -redent@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz" - integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== - dependencies: - indent-string "^4.0.0" - strip-indent "^3.0.0" - -redux-saga@^1.1.3: - version "1.3.0" - resolved "https://registry.npmjs.org/redux-saga/-/redux-saga-1.3.0.tgz" - integrity sha512-J9RvCeAZXSTAibFY0kGw6Iy4EdyDNW7k6Q+liwX+bsck7QVsU78zz8vpBRweEfANxnnlG/xGGeOvf6r8UXzNJQ== - dependencies: - "@redux-saga/core" "^1.3.0" - -redux-thunk@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/redux-thunk/-/redux-thunk-3.1.0.tgz" - integrity sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw== - -redux@^4.1.2: - version "4.2.1" - resolved "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz" - integrity sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w== - dependencies: - "@babel/runtime" "^7.9.2" - -redux@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/redux/-/redux-5.0.1.tgz" - integrity sha512-M9/ELqF6fy8FwmkpnF0S3YKOqMyoWJ4+CS5Efg2ct3oY9daQvd/Pc71FpGZsVsbl3Cpb+IIcjBDUnnyBdQbq4w== - -reflect-metadata@^0.1.13: - version "0.1.14" - resolved "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz" - integrity sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A== - -reflect.getprototypeof@^1.0.6, reflect.getprototypeof@^1.0.9: - version "1.0.10" - resolved "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz" - integrity sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw== - dependencies: - call-bind "^1.0.8" - define-properties "^1.2.1" - es-abstract "^1.23.9" - es-errors "^1.3.0" - es-object-atoms "^1.0.0" - get-intrinsic "^1.2.7" - get-proto "^1.0.1" - which-builtin-type "^1.2.1" - -regenerator-runtime@^0.14.0, regenerator-runtime@^0.14.1: - version "0.14.1" - resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz" - integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== - -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - -regexp.prototype.flags@^1.4.3, regexp.prototype.flags@^1.5.3, regexp.prototype.flags@^1.5.4: - version "1.5.4" - resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz" - integrity sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA== - dependencies: - call-bind "^1.0.8" - define-properties "^1.2.1" - es-errors "^1.3.0" - get-proto "^1.0.1" - gopd "^1.2.0" - set-function-name "^2.0.2" - -regexpp@^3.1.0: - version "3.2.0" - resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz" - integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== - -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" - integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== - -repeat-element@^1.1.2: - version "1.1.4" - resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz" - integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== - -repeat-string@^0.2.2: - version "0.2.2" - resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz" - integrity sha512-yHeI3F9v20MY+8/5WAUgIWseMZwpLD+l9h5hGyzh6fQjhle2AwjjRDao1m5IozSDuVvMw09/mvE8AU1oDmZKpQ== - -repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" - integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== - -request@^2.88.0: - version "2.88.2" - resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - -require-from-string@^2.0.2: - 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== - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz" - integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== - -reselect@^5.1.0: - version "5.1.1" - resolved "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz" - integrity sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w== - -resolve-from@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" - integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== - -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz" - integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== - -resolve@^1.19.0, resolve@^1.22.4: - version "1.22.8" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz" - integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== - dependencies: - is-core-module "^2.13.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -resolve@^2.0.0-next.5: - version "2.0.0-next.5" - resolved "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz" - integrity sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA== - dependencies: - is-core-module "^2.13.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -restore-cursor@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" - integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== - dependencies: - onetime "^5.1.0" - signal-exit "^3.0.2" - -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - -rfdc@^1.1.2, rfdc@^1.3.0: - version "1.3.1" - resolved "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz" - integrity sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg== - -rimraf@^2.6.0: - version "2.7.1" - resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz" - integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== - dependencies: - glob "^7.1.3" - -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== - dependencies: - glob "^7.1.3" - -rollup@^4.34.9: - version "4.41.1" - resolved "https://registry.npmjs.org/rollup/-/rollup-4.41.1.tgz" - integrity sha512-cPmwD3FnFv8rKMBc1MxWCwVQFxwf1JEmSX3iQXrRVVG15zerAIXRjMFVWnd5Q5QvgKF7Aj+5ykXFhUl+QGnyOw== - dependencies: - "@types/estree" "1.0.7" - optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.41.1" - "@rollup/rollup-android-arm64" "4.41.1" - "@rollup/rollup-darwin-arm64" "4.41.1" - "@rollup/rollup-darwin-x64" "4.41.1" - "@rollup/rollup-freebsd-arm64" "4.41.1" - "@rollup/rollup-freebsd-x64" "4.41.1" - "@rollup/rollup-linux-arm-gnueabihf" "4.41.1" - "@rollup/rollup-linux-arm-musleabihf" "4.41.1" - "@rollup/rollup-linux-arm64-gnu" "4.41.1" - "@rollup/rollup-linux-arm64-musl" "4.41.1" - "@rollup/rollup-linux-loongarch64-gnu" "4.41.1" - "@rollup/rollup-linux-powerpc64le-gnu" "4.41.1" - "@rollup/rollup-linux-riscv64-gnu" "4.41.1" - "@rollup/rollup-linux-riscv64-musl" "4.41.1" - "@rollup/rollup-linux-s390x-gnu" "4.41.1" - "@rollup/rollup-linux-x64-gnu" "4.41.1" - "@rollup/rollup-linux-x64-musl" "4.41.1" - "@rollup/rollup-win32-arm64-msvc" "4.41.1" - "@rollup/rollup-win32-ia32-msvc" "4.41.1" - "@rollup/rollup-win32-x64-msvc" "4.41.1" - fsevents "~2.3.2" - -rxjs@^7.5.1: - 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" - -safe-array-concat@^1.1.3: - version "1.1.3" - resolved "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz" - integrity sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.2" - get-intrinsic "^1.2.6" - has-symbols "^1.1.0" - isarray "^2.0.5" - -safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-push-apply@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz" - integrity sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA== - dependencies: - es-errors "^1.3.0" - isarray "^2.0.5" - -safe-regex-test@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz" - integrity sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw== - dependencies: - call-bound "^1.0.2" - es-errors "^1.3.0" - is-regex "^1.2.1" - -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz" - integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== - dependencies: - ret "~0.1.10" - -safer-buffer@^2.0.2, safer-buffer@^2.1.0, "safer-buffer@>= 2.1.2 < 3", safer-buffer@~2.1.0: - version "2.1.2" - resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -sass@^1.44.0: - version "1.70.0" - resolved "https://registry.npmjs.org/sass/-/sass-1.70.0.tgz" - integrity sha512-uUxNQ3zAHeAx5nRFskBnrWzDUJrrvpCPD5FNAoRvTi0WwremlheES3tg+56PaVtCs5QDRX5CBLxxKMDJMEa1WQ== - dependencies: - chokidar ">=3.0.0 <4.0.0" - immutable "^4.0.0" - source-map-js ">=0.6.2 <2.0.0" - -scheduler@^0.23.2: - version "0.23.2" - resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz" - integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ== - dependencies: - loose-envify "^1.1.0" - -scroll@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/scroll/-/scroll-3.0.1.tgz" - integrity sha512-pz7y517OVls1maEzlirKO5nPYle9AXsFzTMNJrRGmT951mzpIBy7sNHOg5o/0MQd/NqliCiWnAi0kZneMPFLcg== - -scrollparent@^2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/scrollparent/-/scrollparent-2.1.0.tgz" - integrity sha512-bnnvJL28/Rtz/kz2+4wpBjHzWoEzXhVg/TE8BeVGJHUqE8THNIRnDxDWMktwM+qahvlRdvlLdsQfYe+cuqfZeA== - -security-context@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/security-context/-/security-context-4.0.0.tgz" - integrity sha512-yiDCS7tpKQl6p4NG57BdKLTSNLFfj5HosBIzXBl4jZf/qorJzSzbEUIdLhN+vVYgyLlvjixY8DPPTgqI8zvNCA== - -semver-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz" - integrity sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow== - -semver@^6.2.0, semver@^6.3.0, semver@^6.3.1: - version "6.3.1" - resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" - integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== - -semver@^7.2.1: - version "7.6.3" - resolved "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz" - integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== - -serialize-error@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/serialize-error/-/serialize-error-5.0.0.tgz" - integrity sha512-/VtpuyzYf82mHYTtI4QKtwHa79vAdU5OQpNPAmE/0UDdlGT0ZxHwC+J6gXkw29wwoVI8fMPsfcVHOwXtUQYYQA== - dependencies: - type-fest "^0.8.0" - -set-function-length@^1.2.2: - 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== - 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" - -set-function-name@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz" - integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== - dependencies: - define-data-property "^1.1.4" - es-errors "^1.3.0" - functions-have-names "^1.2.3" - has-property-descriptors "^1.0.2" - -set-proto@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz" - integrity sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw== - dependencies: - dunder-proto "^1.0.1" - es-errors "^1.3.0" - es-object-atoms "^1.0.0" - -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - -setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" - integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== - -setprototypeof@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" - integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== - -shebang-command@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" - integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== - dependencies: - shebang-regex "^3.0.0" - -shebang-regex@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" - integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== - -side-channel-list@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz" - integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== - dependencies: - es-errors "^1.3.0" - object-inspect "^1.13.3" - -side-channel-map@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz" - integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== - dependencies: - call-bound "^1.0.2" - es-errors "^1.3.0" - get-intrinsic "^1.2.5" - object-inspect "^1.13.3" - -side-channel-weakmap@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz" - integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== - dependencies: - call-bound "^1.0.2" - es-errors "^1.3.0" - get-intrinsic "^1.2.5" - object-inspect "^1.13.3" - side-channel-map "^1.0.1" - -side-channel@^1.0.4, side-channel@^1.0.6, side-channel@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz" - integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== - dependencies: - es-errors "^1.3.0" - object-inspect "^1.13.3" - side-channel-list "^1.0.0" - side-channel-map "^1.0.1" - side-channel-weakmap "^1.0.2" - -signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.7" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz" - integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== - -slash@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" - integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== - -slice-ansi@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz" - integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -slice-ansi@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" - integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - -socket.io-adapter@~1.1.0: - version "1.1.2" - resolved "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz" - integrity sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g== - -socket.io-client@2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz" - integrity sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ== - dependencies: - backo2 "1.0.2" - base64-arraybuffer "0.1.5" - component-bind "1.0.0" - component-emitter "1.2.1" - debug "~3.1.0" - engine.io-client "~3.2.0" - has-binary2 "~1.0.2" - has-cors "1.1.0" - indexof "0.0.1" - object-component "0.0.3" - parseqs "0.0.5" - parseuri "0.0.5" - socket.io-parser "~3.2.0" - to-array "0.1.4" - -socket.io-parser@~3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz" - integrity sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA== - dependencies: - component-emitter "1.2.1" - debug "~3.1.0" - isarray "2.0.1" - -socket.io@2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz" - integrity sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA== - dependencies: - debug "~3.1.0" - engine.io "~3.2.0" - has-binary2 "~1.0.2" - socket.io-adapter "~1.1.0" - socket.io-client "2.1.1" - socket.io-parser "~3.2.0" - -sodium-native@^3.2.0: - version "3.4.1" - resolved "https://registry.npmjs.org/sodium-native/-/sodium-native-3.4.1.tgz" - integrity sha512-PaNN/roiFWzVVTL6OqjzYct38NSXewdl2wz8SRB51Br/MLIJPrbM3XexhVWkq7D3UWMysfrhKVf1v1phZq6MeQ== - dependencies: - node-gyp-build "^4.3.0" - -source-map-js@^1.2.1, "source-map-js@>=0.6.2 <2.0.0": - version "1.2.1" - resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz" - integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== - -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== - -source-map@^0.5.6, source-map@^0.5.7: - version "0.5.7" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" - integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== - -source-map@^0.6.1: - version "0.6.1" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -split-graphemes@^0.5.0: - version "0.5.0" - resolved "https://registry.npmjs.org/split-graphemes/-/split-graphemes-0.5.0.tgz" - integrity sha512-TTZ4IPmxuGZOPqhKLHscOeVf568gDP8JE8FxaZU/k30Q3Ra1BRhMv8d9jq1R6A/6T8wSz6ozYn3aJ5skgP6omA== - -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== - -sshpk@^1.7.0: - version "1.18.0" - resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz" - integrity sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -stack-utils@^2.0.3: - version "2.0.6" - resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz" - integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== - dependencies: - escape-string-regexp "^2.0.0" - -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz" - integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - -statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" - integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== - -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - -stop-iteration-iterator@^1.0.0, stop-iteration-iterator@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz" - integrity sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ== - dependencies: - es-errors "^1.3.0" - internal-slot "^1.1.0" - -streamroller@0.7.0: - version "0.7.0" - resolved "https://registry.npmjs.org/streamroller/-/streamroller-0.7.0.tgz" - integrity sha512-WREzfy0r0zUqp3lGO096wRuUp7ho1X6uo/7DJfTlEi0Iv/4gT7YHqXDjKC2ioVGBZtE8QzsQD9nx1nIuoZ57jQ== - dependencies: - date-format "^1.2.0" - debug "^3.1.0" - mkdirp "^0.5.1" - readable-stream "^2.3.0" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -string-argv@0.3.1: - version "0.3.1" - resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.1.tgz" - integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -string.prototype.matchall@^4.0.12: - version "4.0.12" - resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.12.tgz" - integrity sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.3" - define-properties "^1.2.1" - es-abstract "^1.23.6" - es-errors "^1.3.0" - es-object-atoms "^1.0.0" - get-intrinsic "^1.2.6" - gopd "^1.2.0" - has-symbols "^1.1.0" - internal-slot "^1.1.0" - regexp.prototype.flags "^1.5.3" - set-function-name "^2.0.2" - side-channel "^1.1.0" - -string.prototype.repeat@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz" - integrity sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w== - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" - -string.prototype.trim@^1.2.10: - version "1.2.10" - resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz" - integrity sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.2" - define-data-property "^1.1.4" - define-properties "^1.2.1" - es-abstract "^1.23.5" - es-object-atoms "^1.0.0" - has-property-descriptors "^1.0.2" - -string.prototype.trimend@^1.0.9: - version "1.0.9" - resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz" - integrity sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ== - dependencies: - call-bind "^1.0.8" - call-bound "^1.0.2" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - -string.prototype.trimstart@^1.0.8: - version "1.0.8" - resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz" - integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== - dependencies: - call-bind "^1.0.7" - define-properties "^1.2.1" - es-object-atoms "^1.0.0" - -stringify-object@3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" - integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== - -strip-final-newline@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz" - integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== - -strip-indent@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz" - integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== - dependencies: - min-indent "^1.0.0" - -strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" - integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== - -strnum@^1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz" - integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA== - -stylis@4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz" - integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== - -supports-color@^5.3.0: - version "5.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - -supports-color@8.1.1: - version "8.1.1" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - -supports-preserve-symlinks-flag@^1.0.0: - 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== - -table@^6.0.9: - version "6.8.1" - resolved "https://registry.npmjs.org/table/-/table-6.8.1.tgz" - integrity sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA== - dependencies: - ajv "^8.0.1" - lodash.truncate "^4.4.2" - slice-ansi "^4.0.0" - string-width "^4.2.3" - strip-ansi "^6.0.1" - -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== - -throttle-debounce@^2.1.0: - version "2.3.0" - resolved "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.3.0.tgz" - integrity sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ== - -through@^2.3.8: - version "2.3.8" - resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" - integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== - -tiny-warning@^1.0.2: - version "1.0.3" - resolved "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz" - integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== - -tinyglobby@^0.2.13: - version "0.2.14" - resolved "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz" - integrity sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ== - dependencies: - fdir "^6.4.4" - picomatch "^4.0.2" - -tmp@0.0.33, tmp@0.0.x: - version "0.0.33" - resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" - -to-array@0.1.4: - version "0.1.4" - resolved "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz" - integrity sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A== - -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz" - integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz" - integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - -to-regex-range@^5.0.1: - 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== - dependencies: - is-number "^7.0.0" - -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - -toidentifier@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz" - integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== - -tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tr46@~0.0.3: - version "0.0.3" - resolved "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" - integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== - -tree-changes@^0.11.2: - version "0.11.3" - resolved "https://registry.npmjs.org/tree-changes/-/tree-changes-0.11.3.tgz" - integrity sha512-r14mvDZ6tqz8PRQmlFKjhUVngu4VZ9d92ON3tp0EGpFBE6PAHOq8Bx8m8ahbNoGE3uI/npjYcJiqVydyOiYXag== - dependencies: - "@gilbarbara/deep-equal" "^0.3.1" - is-lite "^1.2.1" - -tree-changes@^0.9.1: - version "0.9.3" - resolved "https://registry.npmjs.org/tree-changes/-/tree-changes-0.9.3.tgz" - integrity sha512-vvvS+O6kEeGRzMglTKbc19ltLWNtmNt1cpBoSYLj/iEcPVvpJasemKOlxBrmZaCtDJoF+4bwv3m01UKYi8mukQ== - dependencies: - "@gilbarbara/deep-equal" "^0.1.1" - is-lite "^0.8.2" - -ts-node@^10.9.1: - version "10.9.2" - resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz" - integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== - dependencies: - "@cspotcode/source-map-support" "^0.8.0" - "@tsconfig/node10" "^1.0.7" - "@tsconfig/node12" "^1.0.7" - "@tsconfig/node14" "^1.0.0" - "@tsconfig/node16" "^1.0.2" - acorn "^8.4.1" - acorn-walk "^8.1.1" - arg "^4.1.0" - create-require "^1.1.0" - diff "^4.0.1" - make-error "^1.1.1" - v8-compile-cache-lib "^3.0.1" - yn "3.1.1" - -tsconfig-paths@^3.15.0: - version "3.15.0" - resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz" - integrity sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg== - dependencies: - "@types/json5" "^0.0.29" - json5 "^1.0.2" - minimist "^1.2.6" - strip-bom "^3.0.0" - -tslib@^2.1.0, tslib@^2.4.0, tslib@^2.4.1, tslib@^2.6.2: - version "2.8.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz" - integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA== - -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" - integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== - dependencies: - safe-buffer "^5.0.1" - -tween-functions@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/tween-functions/-/tween-functions-1.2.0.tgz" - integrity sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA== - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" - integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== - -type-check@^0.4.0, type-check@~0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" - integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== - dependencies: - prelude-ls "^1.2.1" - -type-fest@^0.20.2: - version "0.20.2" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz" - integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== - -type-fest@^0.21.3: - 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== - -type-fest@^0.8.0: - version "0.8.1" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== - -type-fest@^4.27.0: - version "4.39.1" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-4.39.1.tgz" - integrity sha512-uW9qzd66uyHYxwyVBYiwS4Oi0qZyUqwjU+Oevr6ZogYiXt99EOYtwvzMSLw1c3lYo2HzJsep/NB23iEVEgjG/w== - -type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" - -typed-array-buffer@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz" - integrity sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw== - dependencies: - call-bound "^1.0.3" - es-errors "^1.3.0" - is-typed-array "^1.1.14" - -typed-array-byte-length@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz" - integrity sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg== - dependencies: - call-bind "^1.0.8" - for-each "^0.3.3" - gopd "^1.2.0" - has-proto "^1.2.0" - is-typed-array "^1.1.14" - -typed-array-byte-offset@^1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz" - integrity sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ== - dependencies: - available-typed-arrays "^1.0.7" - call-bind "^1.0.8" - for-each "^0.3.3" - gopd "^1.2.0" - has-proto "^1.2.0" - is-typed-array "^1.1.15" - reflect.getprototypeof "^1.0.9" - -typed-array-length@^1.0.7: - version "1.0.7" - resolved "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz" - integrity sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg== - dependencies: - call-bind "^1.0.7" - for-each "^0.3.3" - gopd "^1.0.1" - is-typed-array "^1.1.13" - possible-typed-array-names "^1.0.0" - reflect.getprototypeof "^1.0.6" - -typescript-compare@^0.0.2: - version "0.0.2" - resolved "https://registry.npmjs.org/typescript-compare/-/typescript-compare-0.0.2.tgz" - integrity sha512-8ja4j7pMHkfLJQO2/8tut7ub+J3Lw2S3061eJLFQcvs3tsmJKp8KG5NtpLn7KcY2w08edF74BSVN7qJS0U6oHA== - dependencies: - typescript-logic "^0.0.0" - -typescript-logic@^0.0.0: - version "0.0.0" - resolved "https://registry.npmjs.org/typescript-logic/-/typescript-logic-0.0.0.tgz" - integrity sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q== - -typescript-tuple@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/typescript-tuple/-/typescript-tuple-2.2.1.tgz" - integrity sha512-Zcr0lbt8z5ZdEzERHAMAniTiIKerFCMgd7yjq1fPnDJ43et/k9twIFQMUYff9k5oXcsQ0WpvFcgzK2ZKASoW6Q== - dependencies: - typescript-compare "^0.0.2" - -typescript@^5.1.6: - version "5.6.3" - resolved "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz" - integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw== - -ultron@~1.1.0: - version "1.1.1" - resolved "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz" - integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== - -unbox-primitive@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz" - integrity sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw== - dependencies: - call-bound "^1.0.3" - has-bigints "^1.0.2" - has-symbols "^1.1.0" - which-boxed-primitive "^1.1.1" - -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - -unpipe@~1.0.0, unpipe@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" - integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== - -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz" - integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -upath@^1.1.1: - version "1.2.0" - resolved "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz" - integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== - -update-browserslist-db@^1.1.0: - version "1.1.1" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz" - integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== - dependencies: - escalade "^3.2.0" - picocolors "^1.1.0" - -uri-js@^4.2.2: - version "4.4.1" - resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" - integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== - -use-sound@^4.0.1: - version "4.0.3" - resolved "https://registry.npmjs.org/use-sound/-/use-sound-4.0.3.tgz" - integrity sha512-L205pEUFIrLsGYsCUKHQVCt0ajs//YQOFbEQeNwaWaqQj3y3st4SuR+rvpMHLmv8hgTcfUFlvMQawZNI3OE18w== - dependencies: - howler "^2.1.3" - -use-sync-external-store@^1.0.0: - version "1.2.2" - resolved "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz" - integrity sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw== - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - -useragent@2.3.0: - version "2.3.0" - resolved "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz" - integrity sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw== - dependencies: - lru-cache "4.1.x" - tmp "0.0.x" - -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" - integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== - -uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== - -uuid@^9.0.1: - version "9.0.1" - resolved "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz" - integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== - -v8-compile-cache-lib@^3.0.1: - version "3.0.1" - resolved "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz" - integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== - -v8-compile-cache@^2.0.3: - version "2.4.0" - resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz" - integrity sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw== - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz" - integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - -vite-plugin-wasm@^3.4.1: - version "3.4.1" - resolved "https://registry.npmjs.org/vite-plugin-wasm/-/vite-plugin-wasm-3.4.1.tgz" - integrity sha512-ja3nSo2UCkVeitltJGkS3pfQHAanHv/DqGatdI39ja6McgABlpsZ5hVgl6wuR8Qx5etY3T5qgDQhOWzc5RReZA== - -vite@^6.3.5: - version "6.3.5" - resolved "https://registry.npmjs.org/vite/-/vite-6.3.5.tgz" - integrity sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ== - dependencies: - esbuild "^0.25.0" - fdir "^6.4.4" - picomatch "^4.0.2" - postcss "^8.5.3" - rollup "^4.34.9" - tinyglobby "^0.2.13" - optionalDependencies: - fsevents "~2.3.3" - -void-elements@^2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz" - integrity sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung== - -web-vitals@^2.1.4: - version "2.1.4" - resolved "https://registry.npmjs.org/web-vitals/-/web-vitals-2.1.4.tgz" - integrity sha512-sVWcwhU5mX6crfI5Vd2dC4qchyTqxV8URinzt25XqVh+bHEPGH4C3NPrNionCP7Obx59wrYEbNlw4Z8sjALzZg== - -webidl-conversions@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" - integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== - -whatwg-fetch@^3.1.0: - version "3.6.20" - resolved "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz" - integrity sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg== - -whatwg-url@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz" - integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== - dependencies: - tr46 "~0.0.3" - webidl-conversions "^3.0.0" - -which-boxed-primitive@^1.0.2, which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz" - integrity sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA== - dependencies: - is-bigint "^1.1.0" - is-boolean-object "^1.2.1" - is-number-object "^1.1.1" - is-string "^1.1.1" - is-symbol "^1.1.1" - -which-builtin-type@^1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz" - integrity sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q== - dependencies: - call-bound "^1.0.2" - function.prototype.name "^1.1.6" - has-tostringtag "^1.0.2" - is-async-function "^2.0.0" - is-date-object "^1.1.0" - is-finalizationregistry "^1.1.0" - is-generator-function "^1.0.10" - is-regex "^1.2.1" - is-weakref "^1.0.2" - isarray "^2.0.5" - which-boxed-primitive "^1.1.0" - which-collection "^1.0.2" - which-typed-array "^1.1.16" - -which-collection@^1.0.1, which-collection@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz" - integrity sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw== - dependencies: - is-map "^2.0.3" - is-set "^2.0.3" - is-weakmap "^2.0.2" - is-weakset "^2.0.3" - -which-typed-array@^1.1.16, which-typed-array@^1.1.19, which-typed-array@^1.1.9: - version "1.1.19" - resolved "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz" - integrity sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw== - dependencies: - available-typed-arrays "^1.0.7" - call-bind "^1.0.8" - call-bound "^1.0.4" - for-each "^0.3.5" - get-proto "^1.0.1" - gopd "^1.2.0" - has-tostringtag "^1.0.2" - -which@^2.0.1: - version "2.0.2" - resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" - integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== - dependencies: - isexe "^2.0.0" - -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz" - integrity sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw== - -wrap-ansi@^6.2.0: - version "6.2.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrappy@1: - version "1.0.2" - resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== - -ws@~3.3.1: - version "3.3.3" - resolved "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz" - integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA== - dependencies: - async-limiter "~1.0.0" - safe-buffer "~5.1.0" - ultron "~1.1.0" - -xmldom@0.1.19: - version "0.1.19" - resolved "https://registry.npmjs.org/xmldom/-/xmldom-0.1.19.tgz" - integrity sha512-pDyxjQSFQgNHkU+yjvoF+GXVGJU7e9EnOg/KcGMDihBIKjTsOeDYaECwC/O9bsUWKY+Sd9izfE43JXC46EOHKA== - -xmlhttprequest-ssl@~1.5.4: - version "1.5.5" - resolved "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz" - integrity sha512-/bFPLUgJrfGUL10AIv4Y7/CUt6so9CLtB/oFxQSHseSDNNCdC6vwwKEqwLN6wNPBg9YWXAiMu8jkf6RPRS/75Q== - -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" - integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== - -yallist@^3.0.2: - version "3.1.1" - resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" - integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== - -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== - -yaml@^1.10.0: - version "1.10.2" - resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz" - integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== - -yeast@0.1.2: - version "0.1.2" - resolved "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz" - integrity sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg== - -yn@3.1.1: - version "3.1.1" - resolved "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz" - integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==