diff --git a/.clusterfuzzlite/Dockerfile b/.clusterfuzzlite/Dockerfile
new file mode 100644
index 0000000..bc0227f
--- /dev/null
+++ b/.clusterfuzzlite/Dockerfile
@@ -0,0 +1,14 @@
+FROM ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-lite:latest AS LITE_BUILDER
+
+# Base image with clang toolchain
+FROM gcr.io/oss-fuzz-base/base-builder:v1
+
+# Copy the project's source code.
+COPY . $SRC/app-plugin-staderlabs
+COPY --from=LITE_BUILDER /opt/nanox-secure-sdk $SRC/app-plugin-staderlabs/BOLOS_SDK
+
+# Working directory for build.sh
+WORKDIR $SRC/app-plugin-staderlabs
+
+# Copy build.sh into $SRC dir.
+COPY ./.clusterfuzzlite/build.sh $SRC/
diff --git a/.clusterfuzzlite/build.sh b/.clusterfuzzlite/build.sh
new file mode 100644
index 0000000..3a819ae
--- /dev/null
+++ b/.clusterfuzzlite/build.sh
@@ -0,0 +1,9 @@
+#!/bin/bash -eu
+
+# build fuzzers
+
+pushd fuzzing
+cmake -DBOLOS_SDK=../BOLOS_SDK -Bbuild -H.
+make -C build
+mv ./build/fuzz "${OUT}"
+popd
\ No newline at end of file
diff --git a/.clusterfuzzlite/project.yaml b/.clusterfuzzlite/project.yaml
new file mode 100644
index 0000000..e196c5c
--- /dev/null
+++ b/.clusterfuzzlite/project.yaml
@@ -0,0 +1 @@
+language: c
\ No newline at end of file
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 98b720f..f2fb620 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -4,5 +4,5 @@
- [ ] Target branch is `develop`
- [ ] Application version has been bumped
-
diff --git a/.github/workflows/build_and_functional_tests.yml b/.github/workflows/build_and_functional_tests.yml
new file mode 100644
index 0000000..d6ddf86
--- /dev/null
+++ b/.github/workflows/build_and_functional_tests.yml
@@ -0,0 +1,46 @@
+name: Build and run functional tests using ragger through reusable workflow
+
+# This workflow will build the app and then run functional tests using the Ragger framework upon Speculos emulation.
+# It calls a reusable workflow developed by Ledger's internal developer team to build the application and upload the
+# resulting binaries.
+# It then calls another reusable workflow to run the Ragger tests on the compiled application binary.
+#
+# While this workflow is optional, having functional testing on your application is mandatory and this workflow and
+# tooling environment is meant to be easy to use and adapt after forking your application
+
+on:
+ workflow_dispatch:
+ push:
+ branches:
+ - master
+ - main
+ - develop
+ pull_request:
+
+jobs:
+ build_plugin:
+ name: Build plugin using the reusable workflow
+ uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_build.yml@v1
+ with:
+ upload_app_binaries_artifact: plugin_binaries
+ flags: "DEBUG=1"
+
+ build_develop_ethereum_app:
+ name: Build Ethereum app using the reusable workflow
+ uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_build.yml@v1
+ with:
+ app_repository: LedgerHQ/app-ethereum
+ app_branch_name: develop
+ flags: "DEBUG=1 CAL_TEST_KEY=1"
+ upload_app_binaries_artifact: ethereum_build_develop
+
+ ragger_tests_with_ethereum_develop:
+ name: Run ragger tests using the reusable workflow
+ needs:
+ - build_plugin
+ - build_develop_ethereum_app
+ uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_ragger_tests.yml@v1
+ with:
+ download_app_binaries_artifact: plugin_binaries
+ additional_app_binaries_artifact: ethereum_build_develop
+ additional_app_binaries_artifact_dir: ./tests/.test_dependencies/ethereum/build
diff --git a/.github/workflows/cflite_cron.yml b/.github/workflows/cflite_cron.yml
new file mode 100644
index 0000000..44ac10c
--- /dev/null
+++ b/.github/workflows/cflite_cron.yml
@@ -0,0 +1,41 @@
+name: ClusterFuzzLite cron tasks
+on:
+ workflow_dispatch:
+ push:
+ branches:
+ - main # Use your actual default branch here.
+ schedule:
+ - cron: '0 13 * * 6' # At 01:00 PM, only on Saturday
+permissions: read-all
+jobs:
+ Fuzzing:
+ runs-on: ubuntu-latest
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - mode: batch
+ sanitizer: address
+ - mode: batch
+ sanitizer: memory
+ - mode: prune
+ sanitizer: address
+ - mode: coverage
+ sanitizer: coverage
+ steps:
+ - name: Build Fuzzers (${{ matrix.mode }} - ${{ matrix.sanitizer }})
+ id: build
+ uses: google/clusterfuzzlite/actions/build_fuzzers@v1
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ language: c # Change this to the language you are fuzzing.
+ sanitizer: ${{ matrix.sanitizer }}
+ - name: Run Fuzzers (${{ matrix.mode }} - ${{ matrix.sanitizer }})
+ id: run
+ uses: google/clusterfuzzlite/actions/run_fuzzers@v1
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ fuzz-seconds: 300 # 5 minutes
+ mode: ${{ matrix.mode }}
+ sanitizer: ${{ matrix.sanitizer }}
+
\ No newline at end of file
diff --git a/.github/workflows/cflite_pr.yml b/.github/workflows/cflite_pr.yml
new file mode 100644
index 0000000..f70175e
--- /dev/null
+++ b/.github/workflows/cflite_pr.yml
@@ -0,0 +1,43 @@
+name: ClusterFuzzLite PR fuzzing
+on:
+ pull_request:
+ paths:
+ - '**'
+permissions: read-all
+jobs:
+ PR:
+ runs-on: ubuntu-latest
+ concurrency:
+ group: ${{ github.workflow }}-${{ matrix.sanitizer }}-${{ github.ref }}
+ cancel-in-progress: true
+ strategy:
+ fail-fast: false
+ matrix:
+ sanitizer: [address, undefined, memory] # Override this with the sanitizers you want.
+ steps:
+ - name: Build Fuzzers (${{ matrix.sanitizer }})
+ id: build
+ uses: google/clusterfuzzlite/actions/build_fuzzers@v1
+ with:
+ language: c # Change this to the language you are fuzzing.
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ sanitizer: ${{ matrix.sanitizer }}
+ # Optional but recommended: used to only run fuzzers that are affected
+ # by the PR.
+ # storage-repo: https://${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/OWNER/STORAGE-REPO-NAME.git
+ # storage-repo-branch: main # Optional. Defaults to "main"
+ # storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages".
+ - name: Run Fuzzers (${{ matrix.sanitizer }})
+ id: run
+ uses: google/clusterfuzzlite/actions/run_fuzzers@v1
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ fuzz-seconds: 300 # 5 minutes
+ mode: 'code-change'
+ sanitizer: ${{ matrix.sanitizer }}
+ output-sarif: true
+ # Optional but recommended: used to download the corpus produced by
+ # batch fuzzing.
+ # storage-repo: https://${{ secrets.PERSONAL_ACCESS_TOKEN }}@github.com/OWNER/STORAGE-REPO-NAME.git
+ # storage-repo-branch: main # Optional. Defaults to "main"
+ # storage-repo-branch-coverage: gh-pages # Optional. Defaults to "gh-pages".
\ No newline at end of file
diff --git a/.github/workflows/check_sdk.yml b/.github/workflows/check_sdk.yml
index 2f9f754..8a26b45 100644
--- a/.github/workflows/check_sdk.yml
+++ b/.github/workflows/check_sdk.yml
@@ -1,3 +1,4 @@
+---
name: Check SDK submodule version
on:
@@ -5,36 +6,11 @@ on:
push:
branches:
- master
+ - main
- develop
pull_request:
jobs:
job_check_SDK:
name: Check Ethereum plugin SDK submodule is up-to-date
- runs-on: ubuntu-latest
- steps:
- - name: Clone plugin
- uses: actions/checkout@v3
- with:
- submodules: recursive
- - name: Clone SDK
- uses: actions/checkout@v3
- with:
- repository: LedgerHQ/ethereum-plugin-sdk
- path: plugin-sdk
- ref: ${{ github.base_ref || github.ref_name }}
- - name: Comparing the SDK hash values
- run: |
- git config --global --add safe.directory "$GITHUB_WORKSPACE"
- REPO_SDK_HASH=$(git submodule status | grep sdk | cut -d ' ' -f2)
- echo "SDK submodule hash: ${REPO_SDK_HASH} (checked out from '${{ github.base_ref || github.ref_name }}')"
- CURRENT_SDK_HASH=$(cd ./plugin-sdk/ && git rev-parse HEAD)
- echo "SDK submodule hash: ${CURRENT_SDK_HASH}"
- if [ ${REPO_SDK_HASH} = ${CURRENT_SDK_HASH} ]
- then
- echo "SDK versions match!"
- exit 0
- else
- echo "SDK versions mismatch!"
- exit 1
- fi
+ uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_check_ethereum_sdk.yml@v1
diff --git a/.github/workflows/ci-workflow.yml b/.github/workflows/ci-workflow.yml
deleted file mode 100644
index 3a45c67..0000000
--- a/.github/workflows/ci-workflow.yml
+++ /dev/null
@@ -1,165 +0,0 @@
-name: Compilation & tests
-
-on:
- workflow_dispatch:
- push:
- branches:
- - main
- - master
- - develop
- pull_request:
-
-jobs:
- job_build_release_plugin:
- name: Build release plugin
- strategy:
- matrix:
- include:
- - sdk: "$NANOS_SDK"
- name: "nanos"
- - sdk: "$NANOX_SDK"
- name: "nanox"
- - sdk: "$NANOSP_SDK"
- name: "nanosp"
- - sdk: "$STAX_SDK"
- name: "stax"
-
- runs-on: ubuntu-latest
- container:
- image: ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-lite:latest
-
- steps:
- - name: Clone
- uses: actions/checkout@v3
- with:
- submodules: recursive
-
- - name: Build
- run: |
- make BOLOS_SDK=${{ matrix.sdk }} -j
-
- job_scan_build:
- name: Clang Static Analyzer
- runs-on: ubuntu-latest
- container:
- image: ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-lite:latest
-
- steps:
- - uses: actions/checkout@v3
- with:
- submodules: recursive
-
- - name: Build with Clang Static Analyzer
- run: |
- scan-build --use-cc=clang -analyze-headers -enable-checker security -enable-checker unix -enable-checker valist -o scan-build --status-bugs make default
-
- - uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: scan-build
- path: scan-build
-
- job_build_debug_plugin:
- name: Build debug plugin
- strategy:
- matrix:
- include:
- - sdk: "$NANOS_SDK"
- name: "nanos"
- - sdk: "$NANOX_SDK"
- name: "nanox"
- - sdk: "$NANOSP_SDK"
- name: "nanosp"
-
- runs-on: ubuntu-latest
- container:
- image: ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-lite:latest
-
- steps:
- - name: Clone
- uses: actions/checkout@v3
- with:
- submodules: recursive
-
- - name: Build
- run: |
- make DEBUG=1 BOLOS_SDK=${{ matrix.sdk }} -j
-
- - name: Rename binary
- run: |
- mv bin/app.elf plugin_${{ matrix.name }}.elf
-
- - name: Upload binary
- uses: actions/upload-artifact@v3
- with:
- name: binaries
- path: plugin_${{ matrix.name }}.elf
-
- job_build_debug_app:
- name: Build debug Ethereum app
- strategy:
- matrix:
- include:
- - sdk: "$NANOS_SDK"
- name: "nanos"
- - sdk: "$NANOX_SDK"
- name: "nanox"
- - sdk: "$NANOSP_SDK"
- name: "nanosp"
-
- runs-on: ubuntu-latest
- container:
- image: ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-lite:latest
-
- steps:
- - name: Checkout app-ethereum
- uses: actions/checkout@v3
- with:
- repository: LedgerHQ/app-ethereum
- ref: ${{ ((github.base_ref || github.ref_name) == 'main' && 'master') || (github.base_ref || github.ref_name) }}
- submodules: recursive
-
- - name: Build
- run: |
- make DEBUG=1 BYPASS_SIGNATURES=1 BOLOS_SDK=${{ matrix.sdk }} -j
-
- - name: Rename binary
- run: |
- mv bin/app.elf ethereum_${{ matrix.name }}.elf
-
- - name: Upload binary
- uses: actions/upload-artifact@v3
- with:
- name: binaries
- path: ethereum_${{ matrix.name }}.elf
-
- jobs-e2e-tests:
- name: E2E Tests
- needs: [job_build_debug_plugin, job_build_debug_app]
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v3
-
- - name: Download built binaries
- uses: actions/download-artifact@v3
- with:
- name: binaries
- path: tests/elfs/
-
- - name: Install node
- uses: actions/setup-node@v3
- with:
- node-version: "16.19.0"
-
- - name: Install yarn
- run: |
- npm install -g yarn
-
- - name: Install JS deps
- run: |
- cd tests && yarn install
-
- - name: Run Zemu tests
- run: |
- cd tests && yarn test
diff --git a/.github/workflows/release-build.yml b/.github/workflows/release-build.yml
deleted file mode 100644
index ca465e5..0000000
--- a/.github/workflows/release-build.yml
+++ /dev/null
@@ -1,18 +0,0 @@
----
-name: Release build
-
-on:
- workflow_dispatch:
- push:
- branches:
- - main
- - master
- - develop
- pull_request:
-
-jobs:
- build:
- name: Build application using the reusable workflow
- uses: LedgerHQ/ledger-app-workflows/.github/workflows/reusable_build.yml@v1
- with:
- upload_app_binaries_artifact: "compiled_app_bindaries"
diff --git a/.gitignore b/.gitignore
index e99b25d..f903f72 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,17 +1,18 @@
-# Compilation of Ledger's app
-src/glyphs.c
-src/glyphs.h
-bin/
-debug/
-dep/
-obj/
-tests/elfs/
-build/
+# Application compilation output and artifacts
+/bin/
+/debug/
+/build/
+
# Editors
.idea/
.vscode
+# Fuzzing
+fuzzing/build/
+fuzzing/corpus/
+fuzzing/out/
+
# Python
*.pyc[cod]
*.egg
@@ -20,7 +21,14 @@ __pycache__/
.eggs/
.python-version
-# JS
-tests/node_modules
-tests/lib
-tests/elfs
+# Virtual env for sideload (macOS and Windows)
+ledger/
+
+# Temporary directory with snapshots taken during test runs
+tests/snapshots-tmp/
+
+# Directory storing the ethereum build output for tests run
+tests/.test_dependencies/*
+!tests/.test_dependencies/ethereum/
+tests/.test_dependencies/ethereum/*
+!tests/.test_dependencies/ethereum/.ethereum_application_build_goes_there
\ No newline at end of file
diff --git a/.gitmodules b/.gitmodules
index 4318fd4..1e37be5 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,3 @@
[submodule "ethereum-plugin-sdk"]
path = ethereum-plugin-sdk
- url = git@github.com:LedgerHQ/ethereum-plugin-sdk.git
+ url = https://github.com/LedgerHQ/ethereum-plugin-sdk
diff --git a/Makefile b/Makefile
index 5b85898..a18d751 100755
--- a/Makefile
+++ b/Makefile
@@ -20,7 +20,7 @@ APPNAME = "Staderlabs"
# Application version
APPVERSION_M = 1
-APPVERSION_N = 2
+APPVERSION_N = 3
APPVERSION_P = 0
include ethereum-plugin-sdk/standard_plugin.mk
\ No newline at end of file
diff --git a/PLUGIN_SPECIFICATION.md b/PLUGIN_SPECIFICATION.md
index 4d97f2b..aaee381 100644
--- a/PLUGIN_SPECIFICATION.md
+++ b/PLUGIN_SPECIFICATION.md
@@ -2,7 +2,7 @@
## About
-This documentation describes the smart contracts and functions supported by the staderlabs plugin.
+Below Ledger Live Apps and their corresponding smart contract functionalities are supported by this plugin.
#### MATICx
@@ -25,14 +25,14 @@ Functions covered by above contract/s :
| Network | Contract Name | Smart Contract |
| ------- | ------------- | -------------------------------------------- |
-| BSC | StakeManager | `0x7276241a669489E4BBB76f63d2A43Bfe63080F2F` |
+| BSC | StakeManager | `0x3b961e83400d51e6e1af5c450d3c7d7b80588d28` |
Functions covered by above contract/s :
|Contract | Function | Selector | Displayed Parameters |
| --- | --- | --- | --- |
-|StakeManager | deposit() | `0xd0e30db0`| native_token_amount (bnb) |
-|StakeManager | requestWithdraw(uint256 \_amountInBnbX) | `0x745400c9`| `_amountInBnbX` |
-|StakeManager | claimWithdraw(uint256 \_idx) | `0xb13acedd`| |
+|StakeManager | delegate(string calldata \_referralId) | `0x9ddb511a`| native_token_amount (bnb) |
+|StakeManager | requestWithdraw(uint256 \_amount, string calldata \_referralId) | `0x0d57afa6`| `_amount` |
+|StakeManager | claimWithdrawal(uint256 \_idx) | `0xf8444436`| |
#### ETHx
@@ -48,7 +48,7 @@ Functions covered by above contract/s :
|UserWithdrawalManager | requestWithdraw(uint256 \_ethXAmount, address \_owner, string calldata \_referralId) | `0x1f7ec122`| `_ethXAmount`, `_owner` |
|UserWithdrawalManager | claim(uint256 \_requestId) | `0x379607f5`| |
-#### KELP
+#### KELP (will be deprecated soon)
| Network | Contract Name | Smart Contract |
| ------- | ------------- | -------------------------------------------- |
diff --git a/README.md b/README.md
index 0867e75..f4fb3ca 100644
--- a/README.md
+++ b/README.md
@@ -4,53 +4,26 @@ This is a plugin for the Ethereum application which helps parsing and displaying
## Setup
-Clone the plugin to a new folder.
+1. Clone this repo (along with git submodules)
+ ```shell
+ git clone --recurse-submodules https://github.com/LedgerHQ/app-plugin-staderlabs.git
+ ```
-```shell
-mkdir staderlabs_plugin_folder
-cd staderlabs_plugin_folder
+2. Make sure you have an X11 server running:
+ - On Ubuntu Linux, it should be running by default
+ - On macOS, install and launch XQuartz (make sure to go to XQuartz > Preferences > Security and check "Allow client connections")
+ - On Windows, install and launch VcXsrv (make sure to configure it to disable access control)
-git clone --recurse-submodules https://github.com/LedgerHQ/app-plugin-staderlabs.git
-```
+3. Install and run docker desktop
-Then in the same folder clone app-ethereum.
+4. Install the [Ledger Dev Tools VS Code plugin](https://marketplace.visualstudio.com/items?itemName=LedgerHQ.ledger-dev-tools&ssr=false#overview) and makes sure it's enabled
-```shell
-git clone --recurse-submodules https://github.com/LedgerHQ/app-ethereum.git #app-ethereum
-```
+5. Once you have installed the plugin and open the repo, the plugin should by default try to create and start the containers. If it doesn't, you can simply click "Update Container" under "Ledger Dev Tools" in the Activity Side Bar on VS Code.
-Launch the docker
+6. On the "Ledger Dev Tools" side bar, Select a target and then click on Build.
-```shell
-brew install coreutils #For mac users if below command errors out (realpath doesn't exist)
-sudo docker run --rm -ti -v "$(realpath .):/app" --user $(id -u $USER):$(id -g $USER) ghcr.io/ledgerhq/ledger-app-builder/ledger-app-dev-tools:latest
-```
+7. Once build is complete, click on "Run tests" to run the tests
-From the Docker console
-
-```shell
-#build the staderlabs plugin
-cd app-plugin-staderlabs
-make
-
-#go to tests folder inside staderlabs plugin and build the ".elf" files for testing
-cd tests
-./build_local_test_elfs.sh
-```
-
-## Tests
-
-Open a new Terminal and go to staderlabs_plugin_folder
-
-```shell
-cd app-plugin-staderlabs/tests #go to tests folder inside app-plugin-staderlabs
-yarn install #install node packages
-yarn test #run tests
-```
-
-## Ethereum-App
-
-Need more information about the interface, the architecture, or general stuff about ethereum plugins? You can find more about them in the [ethereum-app documentation](https://github.com/LedgerHQ/app-ethereum/blob/master/doc/ethapp_plugins.asc).
## Smart Contracts
diff --git a/ethereum-plugin-sdk b/ethereum-plugin-sdk
index 0afd2a9..f794d6d 160000
--- a/ethereum-plugin-sdk
+++ b/ethereum-plugin-sdk
@@ -1 +1 @@
-Subproject commit 0afd2a969eb23e8a508560e0e308dc51fb9219e0
+Subproject commit f794d6d24b67da442e20ceae06e924ebdbb98b3d
diff --git a/fuzzing/CMakeLists.txt b/fuzzing/CMakeLists.txt
new file mode 100644
index 0000000..308bed2
--- /dev/null
+++ b/fuzzing/CMakeLists.txt
@@ -0,0 +1,117 @@
+cmake_minimum_required(VERSION 3.10)
+
+if(${CMAKE_VERSION} VERSION_LESS 3.10)
+ cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
+endif()
+
+# project information
+project(Fuzzer
+ VERSION 1.0
+ DESCRIPTION "Contract parser of Staderlabs plugin app"
+ LANGUAGES C)
+
+# guard against bad build-type strings
+if (NOT CMAKE_BUILD_TYPE)
+ set(CMAKE_BUILD_TYPE "Release")
+endif()
+
+if (NOT CMAKE_C_COMPILER_ID MATCHES "Clang")
+ message(FATAL_ERROR "Fuzzer needs to be built with Clang")
+endif()
+
+if (NOT DEFINED BOLOS_SDK)
+ message(FATAL_ERROR "BOLOS_SDK environment variable not found.")
+endif()
+
+# guard against in-source builds
+if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
+ message(FATAL_ERROR "In-source builds not allowed. Please make a new directory (called a build directory) and run CMake from there. You may need to remove CMakeCache.txt. ")
+endif()
+
+# specify C standard
+set(CMAKE_C_STANDARD 11)
+set(CMAKE_C_STANDARD_REQUIRED True)
+
+# compatible with ClusterFuzzLite
+if (NOT DEFINED ENV{LIB_FUZZING_ENGINE})
+ set(COMPILATION_FLAGS_ "-fsanitize=fuzzer,address,undefined,signed-integer-overflow")
+else()
+ set(COMPILATION_FLAGS_ "$ENV{LIB_FUZZING_ENGINE} $ENV{CFLAGS}")
+endif()
+string(REPLACE " " ";" COMPILATION_FLAGS ${COMPILATION_FLAGS_})
+
+add_compile_options(-Wall -Wextra -g -pedantic)
+# Just to limit compilation warnings of the plugin sources
+add_compile_options(-Wno-implicit-function-declaration)
+# Flag depending on the Build Type
+set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0")
+set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -ggdb2 -O3")
+
+set(SRC_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../src")
+set(ETH_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../ethereum-plugin-sdk")
+
+add_compile_definitions(
+ APPNAME="Staderlabs"
+)
+
+add_compile_definitions(
+ IO_HID_EP_LENGTH=64
+ HAVE_ECC
+ HAVE_ECC_WEIERSTRASS
+ HAVE_SECP_CURVES
+ HAVE_ECC_TWISTED_EDWARDS
+ HAVE_ED_CURVES
+ HAVE_ECDSA
+ HAVE_EDDSA
+ HAVE_HASH
+ HAVE_BLAKE2
+ HAVE_SHA224
+ HAVE_SHA256
+ HAVE_SHA3
+ HAVE_SHA512
+)
+
+include_directories(
+ ${BOLOS_SDK}/include
+ ${BOLOS_SDK}/lib_standard_app
+ ${BOLOS_SDK}/lib_cxng/include
+ ${BOLOS_SDK}/lib_cxng/src
+ ${BOLOS_SDK}/target/nanox/include
+ ${ETH_DIR}/src
+ ${SRC_DIR}
+)
+
+# Take all source files from the application and the sdk
+file(GLOB_RECURSE APPLICATION_SRC
+ # Take all plugin sources
+ ${SRC_DIR}/*.c
+
+ # Take all sdk sources
+ ${ETH_DIR}/src/*.c
+)
+# Filter out main.c from the SDK, the fuzzing has its own main
+list(FILTER APPLICATION_SRC EXCLUDE REGEX "${ETH_DIR}/src/main")
+
+add_executable(fuzz
+ ${APPLICATION_SRC}
+
+ # fuzzing specific files
+ fuzz_plugin.c
+ mocks.c
+
+ # sdk utils
+ ${BOLOS_SDK}/src/ledger_assert.c
+ ${BOLOS_SDK}/lib_standard_app/format.c
+
+ # cxng
+ ${BOLOS_SDK}/lib_cxng/src/cx_hash.c
+ ${BOLOS_SDK}/lib_cxng/src/cx_sha256.c
+ ${BOLOS_SDK}/lib_cxng/src/cx_sha512.c
+ ${BOLOS_SDK}/lib_cxng/src/cx_sha3.c
+ ${BOLOS_SDK}/lib_cxng/src/cx_blake2b.c
+ ${BOLOS_SDK}/lib_cxng/src/cx_utils.c
+ ${BOLOS_SDK}/lib_cxng/src/cx_ram.c
+)
+
+target_compile_options(fuzz PUBLIC ${COMPILATION_FLAGS})
+target_link_options(fuzz PUBLIC ${COMPILATION_FLAGS})
diff --git a/fuzzing/README.md b/fuzzing/README.md
new file mode 100644
index 0000000..98dccbc
--- /dev/null
+++ b/fuzzing/README.md
@@ -0,0 +1,86 @@
+# Fuzzing on transaction parser
+
+## Fuzzing
+
+Fuzzing allows us to test how a program behaves when provided with invalid, unexpected, or random data as input.
+
+In the case of `app-plugin-staderlabs` we want to test the code that is responsible for handling the contract data.
+The fuzzer needs to implement `int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)`, which provides an array of random bytes that can be used to simulate a serialized transaction.
+If the application crashes, or a [sanitizer](https://github.com/google/sanitizers) detects any kind of access violation, the fuzzing process is stopped, a report regarding the vulnerability is shown, and the input that triggered the bug is written to disk under the name `crash-*`. The vulnerable input file created can be passed as an argument to the fuzzer to triage the issue.
+
+> **Note**: Usually we want to write a separate fuzz target for each functionality.
+
+## Manual usage based on Ledger container
+
+### Preparation
+
+Before being able to use the fuzzing tests, the environment must be prepared with all submodules.
+To install them, use the following command in the repository root directory:
+
+```console
+git submodule update --init
+```
+
+The fuzzer can run from the docker `ledger-app-builder-legacy`. You can download it from the `ghcr.io` docker repository:
+
+```console
+sudo docker pull ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-legacy:latest
+```
+
+You can then enter this development environment by executing the following command from the repository root directory:
+
+```console
+sudo docker run --rm -ti --user "$(id -u):$(id -g)" -v "$(realpath .):/app" ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder-legacy:latest
+```
+
+### Compilation
+
+Once in the container, go into the `fuzzing` folder to compile the fuzzer:
+
+```console
+cd fuzzing
+
+# cmake initialization
+cmake -DBOLOS_SDK=/opt/nanox-secure-sdk -DCMAKE_C_COMPILER=/usr/bin/clang -Bbuild -H.
+
+# Fuzzer compilation
+make -C build
+```
+
+### Run
+
+```console
+./build/fuzz
+```
+
+## Full usage based on `clusterfuzzlite` container
+
+Exactly the same context as the CI, directly using the `clusterfuzzlite` environment.
+
+More info can be found here:
+
+
+### Preparation
+
+The principle is to build the container, and run it to perform the fuzzing.
+
+> **Note**: The container contains a copy of the sources (they are not cloned), which means the `docker build` command must be re-executed after each code modification.
+
+```console
+# Prepare directory tree
+mkdir fuzzing/{corpus,out}
+# Container generation
+docker build -t app-plugin-staderlabs --file .clusterfuzzlite/Dockerfile .
+```
+
+### Compilation
+
+```console
+docker run --rm --privileged -e FUZZING_LANGUAGE=c -v "$(realpath .)/fuzzing/out:/out" -ti app-plugin-staderlabs
+```
+
+### Run
+
+```console
+docker run --rm --privileged -e FUZZING_ENGINE=libfuzzer -e RUN_FUZZER_MODE=interactive -v "$(realpath .)/fuzzing/corpus:/tmp/fuzz_corpus" -v "$(realpath .)/fuzzing/out:/out" -ti gcr.io/oss-fuzz-base/base-runner run_fuzzer fuzz
+```
diff --git a/fuzzing/fuzz_plugin.c b/fuzzing/fuzz_plugin.c
new file mode 100644
index 0000000..d86a486
--- /dev/null
+++ b/fuzzing/fuzz_plugin.c
@@ -0,0 +1,153 @@
+#include "plugin.h"
+
+// set a small size to detect possible overflows
+#define NAME_LENGTH 3u
+#define VERSION_LENGTH 3u
+
+void handle_init_contract(ethPluginInitContract_t *parameters);
+void handle_provide_parameter(ethPluginProvideParameter_t *parameters);
+void handle_finalize(ethPluginFinalize_t *parameters);
+void handle_provide_token(ethPluginProvideInfo_t *parameters);
+void handle_query_contract_id(ethQueryContractID_t *parameters);
+void handle_query_contract_ui(ethQueryContractUI_t *parameters);
+
+int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
+ ethPluginInitContract_t init_contract = {0};
+ ethPluginProvideParameter_t provide_param = {0};
+ ethPluginFinalize_t finalize = {0};
+ ethPluginProvideInfo_t provide_info = {0};
+ ethQueryContractID_t query_id = {0};
+ ethQueryContractUI_t query_ui = {0};
+ txContent_t content = {0};
+
+ // Fake sha3 context
+ cx_sha3_t sha3;
+
+ ethPluginSharedRO_t shared_ro;
+ shared_ro.txContent = &content;
+
+ ethPluginSharedRW_t shared_rw;
+ shared_rw.sha3 = &sha3;
+
+ context_t context;
+ const uint8_t address[ADDRESS_LENGTH] = {0xee, 0xee, 0xee, 0xee, 0xee, 0xee, 0xee,
+ 0xee, 0xee, 0xee, 0xee, 0xee, 0xee, 0xee,
+ 0xee, 0xee, 0xee, 0xee, 0xee, 0xee};
+
+ // see fullAmount / fullAddress in
+ char title[32] = {0};
+ char msg[79] = {0}; // 2^256 is 78 digits long
+
+ // for token lookups
+ extraInfo_t item1 = {0};
+ extraInfo_t item2 = {0};
+
+ char name[NAME_LENGTH] = {0};
+ char version[VERSION_LENGTH] = {0};
+
+ // data must be big enough to hold a selector
+ if (size < 4) {
+ return 0;
+ }
+
+ init_contract.interfaceVersion = ETH_PLUGIN_INTERFACE_VERSION_LATEST;
+ init_contract.selector = data;
+ init_contract.pluginSharedRO = &shared_ro;
+ init_contract.pluginSharedRW = &shared_rw;
+ init_contract.pluginContext = (uint8_t *) &context;
+ init_contract.pluginContextLength = sizeof(context);
+
+ handle_init_contract(&init_contract);
+ if (init_contract.result != ETH_PLUGIN_RESULT_OK) {
+ return 0;
+ }
+
+ size_t i = 4;
+ // potentially save space for token lookups
+ while (size - i >= 32 + sizeof(extraInfo_t) * 2) {
+ provide_param.parameter = data + i;
+ provide_param.parameterOffset = i;
+ provide_param.pluginContext = (uint8_t *) &context;
+ provide_param.pluginSharedRO = &shared_ro;
+ provide_param.pluginSharedRW = &shared_rw;
+ handle_provide_parameter(&provide_param);
+ if (provide_param.result != ETH_PLUGIN_RESULT_OK) {
+ return 0;
+ }
+ i += 32;
+ }
+
+ finalize.pluginContext = (uint8_t *) &context;
+ finalize.address = address;
+ finalize.pluginSharedRO = &shared_ro;
+ finalize.pluginSharedRW = &shared_rw;
+ handle_finalize(&finalize);
+ if (finalize.result != ETH_PLUGIN_RESULT_OK) {
+ return 0;
+ }
+
+ if (finalize.tokenLookup1 || finalize.tokenLookup2) {
+ provide_info.pluginContext = (uint8_t *) &context;
+ provide_info.pluginSharedRO = &shared_ro;
+ provide_info.pluginSharedRW = &shared_rw;
+ if (finalize.tokenLookup1) {
+ if (size - i >= sizeof(extraInfo_t)) {
+ provide_info.item1 = &item1;
+
+ memcpy(provide_info.item1, data + i, sizeof(extraInfo_t));
+ provide_info.item1->token.ticker[MAX_TICKER_LEN - 1] = '\0';
+ i += sizeof(extraInfo_t);
+ }
+ }
+
+ if (finalize.tokenLookup2) {
+ if (size - i >= sizeof(extraInfo_t)) {
+ provide_info.item2 = &item2;
+
+ memcpy(provide_info.item2, data + i, sizeof(extraInfo_t));
+ provide_info.item2->token.ticker[MAX_TICKER_LEN - 1] = '\0';
+ i += sizeof(extraInfo_t);
+ }
+ }
+
+ handle_provide_token(&provide_info);
+ if (provide_info.result != ETH_PLUGIN_RESULT_OK) {
+ return 0;
+ }
+ }
+
+ query_id.pluginContext = (uint8_t *) &context;
+ query_id.pluginSharedRO = &shared_ro;
+ query_id.pluginSharedRW = &shared_rw;
+ query_id.name = name;
+ query_id.nameLength = sizeof(name);
+ query_id.version = version;
+ query_id.versionLength = sizeof(version);
+ handle_query_contract_id(&query_id);
+
+ if (query_id.result != ETH_PLUGIN_RESULT_OK) {
+ return 0;
+ }
+
+ printf("name: %s\n", query_id.name);
+ printf("version: %s\n", query_id.version);
+
+ for (int i = 0; i < finalize.numScreens + provide_info.additionalScreens; i++) {
+ query_ui.title = title;
+ query_ui.titleLength = sizeof(title);
+ query_ui.msg = msg;
+ query_ui.msgLength = sizeof(msg);
+ query_ui.pluginContext = (uint8_t *) &context;
+ query_ui.pluginSharedRO = &shared_ro;
+ query_ui.pluginSharedRW = &shared_rw;
+
+ query_ui.screenIndex = i;
+ handle_query_contract_ui(&query_ui);
+ if (query_ui.result != ETH_PLUGIN_RESULT_OK) {
+ return 0;
+ }
+ printf("%s: %s\n", title, msg);
+ }
+
+ return 0;
+}
diff --git a/fuzzing/mocks.c b/fuzzing/mocks.c
new file mode 100644
index 0000000..4844573
--- /dev/null
+++ b/fuzzing/mocks.c
@@ -0,0 +1,48 @@
+#include "plugin.h"
+#include "lcx_common.h"
+#include "lcx_hash.h"
+#include
+
+size_t strlcat(char *dst, const char *src, size_t size) {
+ size_t srclen; /* Length of source string */
+ size_t dstlen; /* Length of destination string */
+
+ dstlen = strlen(dst);
+ size -= dstlen + 1;
+
+ if (!size) return (dstlen); /* No room, return immediately... */
+
+ srclen = strlen(src);
+
+ if (srclen > size) srclen = size;
+
+ memcpy(dst + dstlen, src, srclen);
+ dst[dstlen + srclen] = '\0';
+
+ return (dstlen + srclen);
+}
+
+size_t strlcpy(char *dst, const char *src, size_t size) {
+ size_t srclen; /* Length of source string */
+
+ size--;
+
+ srclen = strlen(src);
+
+ if (srclen > size) srclen = size;
+
+ memcpy(dst, src, srclen);
+ dst[srclen] = '\0';
+
+ return (srclen);
+}
+
+cx_err_t cx_keccak_256_hash_iovec(const cx_iovec_t *iovec,
+ size_t iovec_len,
+ uint8_t digest[static CX_KECCAK_256_SIZE]) {
+ return CX_OK;
+}
+
+void os_sched_exit(bolos_task_status_t exit_code) {
+ return;
+}
diff --git a/ledger_app.toml b/ledger_app.toml
index 8637560..fed9dee 100644
--- a/ledger_app.toml
+++ b/ledger_app.toml
@@ -2,3 +2,15 @@
build_directory = "./"
sdk = "C"
devices = ["nanos", "nanox", "nanos+", "stax", "flex"]
+
+[tests]
+pytest_directory = "./tests/"
+
+[tests.dependencies]
+testing_with_latest = [
+ {url = "https://github.com/LedgerHQ/app-ethereum", ref = "develop", use_case = "use_test_keys"},
+]
+
+testing_with_prod = [
+ {url = "https://github.com/LedgerHQ/app-ethereum", ref = "master", use_case = "use_test_keys"},
+]
diff --git a/src/handle_finalize.c b/src/handle_finalize.c
index db7acd5..58fdf77 100644
--- a/src/handle_finalize.c
+++ b/src/handle_finalize.c
@@ -1,4 +1,4 @@
-#include "staderlabs_plugin.h"
+#include "plugin.h"
void handle_finalize(ethPluginFinalize_t *msg) {
context_t *context = (context_t *) msg->pluginContext;
diff --git a/src/handle_init_contract.c b/src/handle_init_contract.c
index 5856a73..17fa179 100644
--- a/src/handle_init_contract.c
+++ b/src/handle_init_contract.c
@@ -1,5 +1,5 @@
#include "plugin_utils.h"
-#include "staderlabs_plugin.h"
+#include "plugin.h"
// Called once to init.
void handle_init_contract(ethPluginInitContract_t *msg) {
@@ -68,25 +68,25 @@ void handle_init_contract(ethPluginInitContract_t *msg) {
context->next_param = UNEXPECTED_PARAMETER;
break;
+ case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
+ context->next_param = UNSTAKE_AMOUNT;
+ strlcpy(context->ticker, "BNBX", sizeof(context->ticker));
+ break;
+
case ETH_MATICX_REQUEST_WITHDRAW:
- // case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
- // the selector matches with `ETH_MATICX_REQUEST_WITHDRAW`
case POLYGON_CHILDPOOL_REQUEST_MATICX_SWAP:
context->next_param = UNSTAKE_AMOUNT;
strlcpy(context->ticker, "MATICX", sizeof(context->ticker));
break;
case ETH_MATICX_CLAIM_WITHDRAWAL:
+ // case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
+ // selector is same as ETH_MATICX_CLAIM_WITHDRAWAL
case POLYGON_CHILDPOOL_CLAIM_MATICX_SWAP:
context->next_param = UNEXPECTED_PARAMETER;
strlcpy(context->ticker, "MATIC", sizeof(context->ticker));
break;
- case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
- context->next_param = UNEXPECTED_PARAMETER;
- strlcpy(context->ticker, "BNB", sizeof(context->ticker));
- break;
-
case KELP_LST_DEPOSIT:
context->next_param = TOKEN_ADDR;
break;
diff --git a/src/handle_provide_parameter.c b/src/handle_provide_parameter.c
index 1fabd84..b28fe9a 100644
--- a/src/handle_provide_parameter.c
+++ b/src/handle_provide_parameter.c
@@ -1,4 +1,4 @@
-#include "staderlabs_plugin.h"
+#include "plugin.h"
// Copy amount sent parameter to amount_received
static void handle_amount_received(const ethPluginProvideParameter_t *msg, context_t *context) {
@@ -29,6 +29,9 @@ static void handle_stake(ethPluginProvideParameter_t *msg, context_t *context) {
}
static void handle_unstake(ethPluginProvideParameter_t *msg, context_t *context) {
+ if (context->skip_next_param) {
+ return;
+ }
switch (context->next_param) {
case UNSTAKE_AMOUNT:
handle_amount_received(msg, context);
@@ -148,8 +151,7 @@ void handle_provide_parameter(ethPluginProvideParameter_t *msg) {
handle_stake(msg, context);
break;
- // case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
- // the selector matches with `ETH_MATICX_REQUEST_WITHDRAW`
+ case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
case ETH_MATICX_REQUEST_WITHDRAW:
case POLYGON_CHILDPOOL_REQUEST_MATICX_SWAP:
handle_unstake(msg, context);
@@ -158,10 +160,11 @@ void handle_provide_parameter(ethPluginProvideParameter_t *msg) {
case KELP_ETH_DEPOSIT:
case ETHX_CLAIM:
case ETH_MATICX_CLAIM_WITHDRAWAL:
+ // case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
+ // selector is same as ETH_MATICX_CLAIM_WITHDRAWAL
case POLYGON_CHILDPOOL_SWAP_MATIC_FOR_MATICX_VIA_INSTANT_POOL:
case POLYGON_CHILDPOOL_CLAIM_MATICX_SWAP:
case BSC_STAKEMANAGER_DEPOSIT:
- case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
context->next_param = UNEXPECTED_PARAMETER;
break;
case KELP_LST_DEPOSIT:
diff --git a/src/handle_provide_token.c b/src/handle_provide_token.c
index 3ff25ef..5f3b839 100644
--- a/src/handle_provide_token.c
+++ b/src/handle_provide_token.c
@@ -1,4 +1,4 @@
-#include "staderlabs_plugin.h"
+#include "plugin.h"
// EDIT THIS: Adapt this function to your needs! Remember, the information for tokens are held in
// `msg->token1` and `msg->token2`. If those pointers are `NULL`, this means the ethereum app didn't
diff --git a/src/handle_query_contract_id.c b/src/handle_query_contract_id.c
index af50989..71ea8eb 100644
--- a/src/handle_query_contract_id.c
+++ b/src/handle_query_contract_id.c
@@ -1,4 +1,4 @@
-#include "staderlabs_plugin.h"
+#include "plugin.h"
// Sets the first screen to display.
void handle_query_contract_id(ethQueryContractID_t *msg) {
@@ -19,8 +19,7 @@ void handle_query_contract_id(ethQueryContractID_t *msg) {
msgVersion = "Stake";
break;
- // case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
- // the selector matches with `ETH_MATICX_REQUEST_WITHDRAW`
+ case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
case ETHX_REQUEST_WITHDRAW:
case ETH_MATICX_REQUEST_WITHDRAW:
case POLYGON_CHILDPOOL_REQUEST_MATICX_SWAP:
@@ -29,8 +28,9 @@ void handle_query_contract_id(ethQueryContractID_t *msg) {
case ETHX_CLAIM:
case ETH_MATICX_CLAIM_WITHDRAWAL:
+ // case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
+ // selector is same as ETH_MATICX_CLAIM_WITHDRAWAL
case POLYGON_CHILDPOOL_CLAIM_MATICX_SWAP:
- case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
msgVersion = "Claim";
break;
diff --git a/src/handle_query_contract_ui.c b/src/handle_query_contract_ui.c
index 69bf438..fa7c5c9 100644
--- a/src/handle_query_contract_ui.c
+++ b/src/handle_query_contract_ui.c
@@ -1,5 +1,5 @@
#include
-#include "staderlabs_plugin.h"
+#include "plugin.h"
static bool set_native_token_stake_ui(ethQueryContractUI_t *msg) {
strlcpy(msg->title, "Stake", msg->titleLength);
@@ -31,11 +31,6 @@ static bool set_stake_ui(ethQueryContractUI_t *msg, const context_t *context) {
static bool set_unstake_ui(ethQueryContractUI_t *msg, context_t *context) {
strlcpy(msg->title, "Unstake", msg->titleLength);
-
- if (memcmp(msg->network_ticker, "BNB", 3) == 0) {
- strlcpy(context->ticker, "BNBX", sizeof(context->ticker));
- }
-
return amountToString(context->amount_received,
sizeof(context->amount_received),
WEI_TO_ETHER,
@@ -46,7 +41,13 @@ static bool set_unstake_ui(ethQueryContractUI_t *msg, context_t *context) {
static bool set_claim_ui(ethQueryContractUI_t *msg, const context_t *context) {
strlcpy(msg->title, "Claim", msg->titleLength);
- strlcpy(msg->msg, context->ticker, msg->msgLength);
+ // to handle case BSC_STAKEMANAGER_CLAIM_WITHDRAW
+ // selector is same as ETH_MATICX_CLAIM_WITHDRAWAL
+ if (memcmp(msg->network_ticker, "BNB", 3) == 0) {
+ strlcpy(msg->msg, msg->network_ticker, msg->msgLength);
+ } else {
+ strlcpy(msg->msg, context->ticker, msg->msgLength);
+ }
return true;
}
@@ -154,8 +155,7 @@ void handle_query_contract_ui(ethQueryContractUI_t *msg) {
ret = set_stake_ui(msg, context);
break;
- // case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
- // the selector matches with `ETH_MATICX_REQUEST_WITHDRAW`
+ case BSC_STAKEMANAGER_REQUEST_WITHDRAW:
case ETH_MATICX_REQUEST_WITHDRAW:
case POLYGON_CHILDPOOL_REQUEST_MATICX_SWAP:
ret = set_unstake_ui(msg, context);
@@ -163,8 +163,9 @@ void handle_query_contract_ui(ethQueryContractUI_t *msg) {
case ETHX_CLAIM:
case ETH_MATICX_CLAIM_WITHDRAWAL:
+ // case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
+ // selector is same as ETH_MATICX_CLAIM_WITHDRAWAL
case POLYGON_CHILDPOOL_CLAIM_MATICX_SWAP:
- case BSC_STAKEMANAGER_CLAIM_WITHDRAW:
case KELP_CLAIM_WITHDRAW:
ret = set_claim_ui(msg, context);
break;
diff --git a/src/staderlabs_plugin.c b/src/plugin.c
similarity index 96%
rename from src/staderlabs_plugin.c
rename to src/plugin.c
index 3321c45..bb59613 100644
--- a/src/staderlabs_plugin.c
+++ b/src/plugin.c
@@ -16,7 +16,7 @@
********************************************************************************/
#include
-#include "staderlabs_plugin.h"
+#include "plugin.h"
// This array will be automatically expanded to map all selector_t names with the correct value.
// Do not modify !
diff --git a/src/staderlabs_plugin.h b/src/plugin.h
similarity index 95%
rename from src/staderlabs_plugin.h
rename to src/plugin.h
index adb2f0d..cf6289f 100644
--- a/src/staderlabs_plugin.h
+++ b/src/plugin.h
@@ -32,9 +32,9 @@
X(POLYGON_CHILDPOOL_SWAP_MATIC_FOR_MATICX_VIA_INSTANT_POOL, 0xc78cf1a0) \
X(POLYGON_CHILDPOOL_REQUEST_MATICX_SWAP, 0x48eaf6d6) \
X(POLYGON_CHILDPOOL_CLAIM_MATICX_SWAP, 0x77baf209) \
- X(BSC_STAKEMANAGER_DEPOSIT, 0xd0e30db0) \
- X(BSC_STAKEMANAGER_REQUEST_WITHDRAW, 0x745400c9) \
- X(BSC_STAKEMANAGER_CLAIM_WITHDRAW, 0xb13acedd) \
+ X(BSC_STAKEMANAGER_DEPOSIT, 0x9ddb511a) \
+ X(BSC_STAKEMANAGER_REQUEST_WITHDRAW, 0x0d57afa6) \
+ X(BSC_STAKEMANAGER_CLAIM_WITHDRAW, 0xf8444436) \
X(ETHX_DEPOSIT, 0xb7482509) \
X(ETHX_REQUEST_WITHDRAW, 0x1f7ec122) \
X(ETHX_CLAIM, 0x379607f5) \
diff --git a/tests/.babelrc b/tests/.babelrc
deleted file mode 100644
index c52f1e0..0000000
--- a/tests/.babelrc
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "plugins": [
- [
- "@babel/plugin-proposal-class-properties"
- ]
- ],
- "presets": [
- [
- "@babel/preset-env",
- {
- "targets": {
- "node": "current"
- }
- }
- ],
- "@babel/preset-flow"
- ]
-}
diff --git a/tests/.flowconfig b/tests/.flowconfig
deleted file mode 100644
index 43c5d12..0000000
--- a/tests/.flowconfig
+++ /dev/null
@@ -1,13 +0,0 @@
-[ignore]
-/lib
-
-[include]
-
-[libs]
-flow-typed
-
-[lints]
-
-[options]
-
-[strict]
diff --git a/tests/.gitignore b/tests/.gitignore
deleted file mode 100644
index 7dc36f5..0000000
--- a/tests/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-snapshots-tmp
-
diff --git a/tests/README.md b/tests/README.md
deleted file mode 100644
index f7c9a2d..0000000
--- a/tests/README.md
+++ /dev/null
@@ -1,45 +0,0 @@
-## Requirements for running the tests
-
-### Binaries
-
-The tests run using both the plugin elf and the ethereum elf, both compiled for
-NanoS and X, so 4 binaries are needed. They are expected to be stored in the
-`tests/elfs/` directory, and named as follow:
-
-* `tests/elfs/plugin_nanos.elf`
-* `tests/elfs/plugin_nanox.elf`
-* `tests/elfs/ethereum_nanos.elf`
-* `tests/elfs/ethereum_nanox.elf`
-
-The `tests/build_local_test_elfs.sh` can be used to generate these binaries.
-
-To use this script, you will need the
-[Ethereum application](https://github.com/LedgerHQ/app-ethereum) to be cloned
-somewhere, and the path of its repository exported in the `APP_ETHEREUM`
-environment variable, or updated in the script, or as an argument of the script.
-
-The script using relative paths, it must be launched from the `tests` directory:
-
-```bash
-cd tests
-./build_local_test_elfs.sh
-```
-
-### Other dependencies
-
-The tests run using the [Zemu framework](https://github.com/Zondax/zemu),
-so the `yarn` manager is needed.
-
-The JavaScript dependencies are then installed with:
-
-```bash
-cd tests
-yarn install
-```
-
-## Launching the tests
-
-```bash
-cd tests
-yarn test
-```
\ No newline at end of file
diff --git a/tests/__init__.py b/tests/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/tests/networks/ethereum/staderlabs/abis/0x036676389e48133b63a802f8635ad39e752d375d.json b/tests/abis/0x036676389e48133b63a802f8635ad39e752d375d.abi.json
similarity index 100%
rename from tests/networks/ethereum/staderlabs/abis/0x036676389e48133b63a802f8635ad39e752d375d.json
rename to tests/abis/0x036676389e48133b63a802f8635ad39e752d375d.abi.json
diff --git a/tests/abis/0x3b961e83400d51e6e1af5c450d3c7d7b80588d28.abi.json b/tests/abis/0x3b961e83400d51e6e1af5c450d3c7d7b80588d28.abi.json
new file mode 100644
index 0000000..9704614
--- /dev/null
+++ b/tests/abis/0x3b961e83400d51e6e1af5c450d3c7d7b80588d28.abi.json
@@ -0,0 +1,1247 @@
+[
+ {
+ "inputs": [],
+ "stateMutability": "nonpayable",
+ "type": "constructor"
+ },
+ {
+ "inputs": [],
+ "name": "AlreadyClaimed",
+ "type": "error"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_currentER",
+ "type": "uint256"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_maxAllowableDelta",
+ "type": "uint256"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_newER",
+ "type": "uint256"
+ }
+ ],
+ "name": "ExchangeRateOutOfBounds",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "InvalidIndex",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "MaxLimitReached",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "NoOperatorsAvailable",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "NoWithdrawalRequests",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "NotProcessed",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "OperatorNotExisted",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "TransferFailed",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "Unbonding",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "WithdrawalBelowMinimum",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "ZeroAddress",
+ "type": "error"
+ },
+ {
+ "inputs": [],
+ "name": "ZeroAmount",
+ "type": "error"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_account",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_index",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnb",
+ "type": "uint256"
+ }
+ ],
+ "name": "ClaimedWithdrawal",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnb",
+ "type": "uint256"
+ }
+ ],
+ "name": "CompletedBatchUndelegation",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_account",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnb",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnbX",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "string",
+ "name": "_referralId",
+ "type": "string"
+ }
+ ],
+ "name": "DelegateReferral",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_account",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "Delegated",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_currentER",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_newER",
+ "type": "uint256"
+ }
+ ],
+ "name": "ExchangeRateUpdated",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "uint8",
+ "name": "version",
+ "type": "uint8"
+ }
+ ],
+ "name": "Initialized",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ }
+ ],
+ "name": "Paused",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_fromOperator",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_toOperator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnb",
+ "type": "uint256"
+ }
+ ],
+ "name": "Redelegated",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_account",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnbX",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "string",
+ "name": "_referralId",
+ "type": "string"
+ }
+ ],
+ "name": "RequestedWithdrawal",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ },
+ {
+ "indexed": true,
+ "internalType": "bytes32",
+ "name": "previousAdminRole",
+ "type": "bytes32"
+ },
+ {
+ "indexed": true,
+ "internalType": "bytes32",
+ "name": "newAdminRole",
+ "type": "bytes32"
+ }
+ ],
+ "name": "RoleAdminChanged",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "sender",
+ "type": "address"
+ }
+ ],
+ "name": "RoleGranted",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ },
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "sender",
+ "type": "address"
+ }
+ ],
+ "name": "RoleRevoked",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_feeBps",
+ "type": "uint256"
+ }
+ ],
+ "name": "SetFeeBps",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_maxActiveRequestsPerUser",
+ "type": "uint256"
+ }
+ ],
+ "name": "SetMaxActiveRequestsPerUser",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_maxExchangeRateSlippageBps",
+ "type": "uint256"
+ }
+ ],
+ "name": "SetMaxExchangeRateSlippageBps",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_minWithdrawableBnbx",
+ "type": "uint256"
+ }
+ ],
+ "name": "SetMinWithdrawableBnbx",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "_treasury",
+ "type": "address"
+ }
+ ],
+ "name": "SetStaderTreasury",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": true,
+ "internalType": "address",
+ "name": "_operator",
+ "type": "address"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnb",
+ "type": "uint256"
+ },
+ {
+ "indexed": false,
+ "internalType": "uint256",
+ "name": "_amountInBnbX",
+ "type": "uint256"
+ }
+ ],
+ "name": "StartedBatchUndelegation",
+ "type": "event"
+ },
+ {
+ "anonymous": false,
+ "inputs": [
+ {
+ "indexed": false,
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ }
+ ],
+ "name": "Unpaused",
+ "type": "event"
+ },
+ {
+ "inputs": [],
+ "name": "BNBX",
+ "outputs": [
+ {
+ "internalType": "contract IBnbX",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "DEFAULT_ADMIN_ROLE",
+ "outputs": [
+ {
+ "internalType": "bytes32",
+ "name": "",
+ "type": "bytes32"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "MANAGER_ROLE",
+ "outputs": [
+ {
+ "internalType": "bytes32",
+ "name": "",
+ "type": "bytes32"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "OPERATOR_REGISTRY",
+ "outputs": [
+ {
+ "internalType": "contract IOperatorRegistry",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "OPERATOR_ROLE",
+ "outputs": [
+ {
+ "internalType": "bytes32",
+ "name": "",
+ "type": "bytes32"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "STAKE_HUB",
+ "outputs": [
+ {
+ "internalType": "contract IStakeHub",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_idx",
+ "type": "uint256"
+ }
+ ],
+ "name": "claimWithdrawal",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "completeBatchUndelegation",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "convertBnbToBnbX",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_amountInBnbX",
+ "type": "uint256"
+ }
+ ],
+ "name": "convertBnbXToBnb",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "string",
+ "name": "_referralId",
+ "type": "string"
+ }
+ ],
+ "name": "delegate",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "payable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "delegateWithoutMinting",
+ "outputs": [],
+ "stateMutability": "payable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "feeBps",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "firstUnbondingBatchIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "firstUnprocessedUserIndex",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "forceUpdateER",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "getActualStakeAcrossAllOperators",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "getBatchWithdrawalRequestCount",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_batchId",
+ "type": "uint256"
+ }
+ ],
+ "name": "getBatchWithdrawalRequestInfo",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "uint256",
+ "name": "amountInBnb",
+ "type": "uint256"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amountInBnbX",
+ "type": "uint256"
+ },
+ {
+ "internalType": "uint256",
+ "name": "unlockTime",
+ "type": "uint256"
+ },
+ {
+ "internalType": "address",
+ "name": "operator",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "isClaimable",
+ "type": "bool"
+ }
+ ],
+ "internalType": "struct BatchWithdrawalRequest",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_batchSize",
+ "type": "uint256"
+ }
+ ],
+ "name": "getBnbxToBurnForBatchSize",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "bnbxToBurn",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "getRedelegationFee",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ }
+ ],
+ "name": "getRoleAdmin",
+ "outputs": [
+ {
+ "internalType": "bytes32",
+ "name": "",
+ "type": "bytes32"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "getUnprocessedWithdrawalRequestCount",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_user",
+ "type": "address"
+ }
+ ],
+ "name": "getUserRequestIds",
+ "outputs": [
+ {
+ "internalType": "uint256[]",
+ "name": "",
+ "type": "uint256[]"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_requestId",
+ "type": "uint256"
+ }
+ ],
+ "name": "getUserRequestInfo",
+ "outputs": [
+ {
+ "components": [
+ {
+ "internalType": "address",
+ "name": "user",
+ "type": "address"
+ },
+ {
+ "internalType": "bool",
+ "name": "processed",
+ "type": "bool"
+ },
+ {
+ "internalType": "bool",
+ "name": "claimed",
+ "type": "bool"
+ },
+ {
+ "internalType": "uint256",
+ "name": "amountInBnbX",
+ "type": "uint256"
+ },
+ {
+ "internalType": "uint256",
+ "name": "batchId",
+ "type": "uint256"
+ }
+ ],
+ "internalType": "struct WithdrawalRequest",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "getWithdrawalRequestCount",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ },
+ {
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ }
+ ],
+ "name": "grantRole",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ },
+ {
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ }
+ ],
+ "name": "hasRole",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_admin",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "_operatorRegistry",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "_bnbX",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "_staderTreasury",
+ "type": "address"
+ }
+ ],
+ "name": "initialize",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "maxActiveRequestsPerUser",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "maxExchangeRateSlippageBps",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "minWithdrawableBnbx",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "pause",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "paused",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_fromOperator",
+ "type": "address"
+ },
+ {
+ "internalType": "address",
+ "name": "_toOperator",
+ "type": "address"
+ },
+ {
+ "internalType": "uint256",
+ "name": "_amount",
+ "type": "uint256"
+ }
+ ],
+ "name": "redelegate",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ },
+ {
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ }
+ ],
+ "name": "renounceRole",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_amount",
+ "type": "uint256"
+ },
+ {
+ "internalType": "string",
+ "name": "_referralId",
+ "type": "string"
+ }
+ ],
+ "name": "requestWithdraw",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes32",
+ "name": "role",
+ "type": "bytes32"
+ },
+ {
+ "internalType": "address",
+ "name": "account",
+ "type": "address"
+ }
+ ],
+ "name": "revokeRole",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_feeBps",
+ "type": "uint256"
+ }
+ ],
+ "name": "setFeeBps",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_maxActiveRequestsPerUser",
+ "type": "uint256"
+ }
+ ],
+ "name": "setMaxActiveRequestsPerUser",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_maxExchangeRateSlippageBps",
+ "type": "uint256"
+ }
+ ],
+ "name": "setMaxExchangeRateSlippageBps",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_minWithdrawableBnbx",
+ "type": "uint256"
+ }
+ ],
+ "name": "setMinWithdrawableBnbx",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "address",
+ "name": "_staderTreasury",
+ "type": "address"
+ }
+ ],
+ "name": "setStaderTreasury",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "staderTreasury",
+ "outputs": [
+ {
+ "internalType": "address",
+ "name": "",
+ "type": "address"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "uint256",
+ "name": "_batchSize",
+ "type": "uint256"
+ },
+ {
+ "internalType": "address",
+ "name": "_operator",
+ "type": "address"
+ }
+ ],
+ "name": "startBatchUndelegation",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [
+ {
+ "internalType": "bytes4",
+ "name": "interfaceId",
+ "type": "bytes4"
+ }
+ ],
+ "name": "supportsInterface",
+ "outputs": [
+ {
+ "internalType": "bool",
+ "name": "",
+ "type": "bool"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "totalDelegated",
+ "outputs": [
+ {
+ "internalType": "uint256",
+ "name": "",
+ "type": "uint256"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "unpause",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "inputs": [],
+ "name": "updateER",
+ "outputs": [],
+ "stateMutability": "nonpayable",
+ "type": "function"
+ },
+ {
+ "stateMutability": "payable",
+ "type": "receive"
+ }
+]
\ No newline at end of file
diff --git a/tests/networks/ethereum/staderlabs/abis/0x62de59c08eb5dae4b7e6f7a8cad3006d6965ec16.json b/tests/abis/0x62de59c08eb5dae4b7e6f7a8cad3006d6965ec16.abi.json
similarity index 100%
rename from tests/networks/ethereum/staderlabs/abis/0x62de59c08eb5dae4b7e6f7a8cad3006d6965ec16.json
rename to tests/abis/0x62de59c08eb5dae4b7e6f7a8cad3006d6965ec16.abi.json
diff --git a/tests/networks/ethereum/staderlabs/abis/0x9f0491b32dbce587c50c4c43ab303b06478193a7.json b/tests/abis/0x9f0491b32dbce587c50c4c43ab303b06478193a7.abi.json
similarity index 100%
rename from tests/networks/ethereum/staderlabs/abis/0x9f0491b32dbce587c50c4c43ab303b06478193a7.json
rename to tests/abis/0x9f0491b32dbce587c50c4c43ab303b06478193a7.abi.json
diff --git a/tests/networks/ethereum/staderlabs/abis/0xcf5ea1b38380f6af39068375516daf40ed70d299.json b/tests/abis/0xcf5ea1b38380f6af39068375516daf40ed70d299.abi.json
similarity index 100%
rename from tests/networks/ethereum/staderlabs/abis/0xcf5ea1b38380f6af39068375516daf40ed70d299.json
rename to tests/abis/0xcf5ea1b38380f6af39068375516daf40ed70d299.abi.json
diff --git a/tests/networks/ethereum/staderlabs/abis/0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645.json b/tests/abis/0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645.abi.json
similarity index 100%
rename from tests/networks/ethereum/staderlabs/abis/0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645.json
rename to tests/abis/0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645.abi.json
diff --git a/tests/networks/polygon/staderlabs/abis/0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3.json b/tests/abis/0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3.abi.json
similarity index 100%
rename from tests/networks/polygon/staderlabs/abis/0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3.json
rename to tests/abis/0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3.abi.json
diff --git a/tests/build_local_test_elfs.sh b/tests/build_local_test_elfs.sh
deleted file mode 100755
index 5d11a2e..0000000
--- a/tests/build_local_test_elfs.sh
+++ /dev/null
@@ -1,87 +0,0 @@
-#!/bin/bash
-
-# FILL THESE WITH YOUR OWN SDKs PATHS and APP-ETHEREUM's ROOT
-NANOS_SDK=$NANOS_SDK
-NANOSP_SDK=$NANOSP_SDK
-NANOX_SDK=$NANOX_SDK
-APP_ETHEREUM=${APP_ETHEREUM:-"/app/app-ethereum"}
-
-set -e
-
-build_plugin() {
- # arguments:
- echo "** Building app-plugin for Nano $1..."
- local target="$(realpath './elfs/')/plugin_nano${1,,}.elf"
- if [ "$1" == "S" ];
- then
- local sdk=$NANOS_SDK
- elif [ "$1" == "SP" ];
- then
- local sdk=$NANOSP_SDK
- elif [ "$1" == "X" ];
- then
- local sdk=$NANOX_SDK
- else
- echo "Unknown SDK '$1'"
- exit 1
- fi
- cd ..
- make clean BOLOS_SDK="$sdk"
- make -j DEBUG=1 BOLOS_SDK="$sdk"
- cp bin/app.elf "$target"
- cd -
-}
-
-build_ethereum() {
- # arguments:
- echo "** Building app-ethereum for Nano $1..."
- local target="$(realpath './elfs/')/ethereum_nano${1,,}.elf"
- if [ "$1" == "S" ];
- then
- local sdk=$NANOS_SDK
- elif [ "$1" == "SP" ];
- then
- local sdk=$NANOSP_SDK
- elif [ "$1" == "X" ];
- then
- local sdk="$NANOX_SDK"
- else
- echo "Unknown SDK '$1'"
- exit 1
- fi
- cd "$APP_ETHEREUM"
- make clean BOLOS_SDK="$sdk"
- make -j DEBUG=1 BYPASS_SIGNATURES=1 BOLOS_SDK="$sdk" CHAIN=ethereum
- cp bin/app.elf "$target"
- cd -
-}
-
-
-main() {
- # create elfs folder if it doesn't exist
- mkdir -p elfs
-
- if [ $# -ne 0 ];
- then
- test -d "$1" ||
- (echo "Provided argument '$1' is expected to be the app-ethereum repository path, but is not a directory" && exit 1);
- APP_ETHEREUM="$1"
- fi
-
- echo "* Building elfs for Nano S..."
- build_plugin "S"
- build_ethereum "S"
-
- echo "* Building elfs for Nano S Plus..."
- build_plugin "SP"
- build_ethereum "SP"
-
- echo "* Building elfs for Nano X..."
- build_plugin "X"
- build_ethereum "X"
-
- echo "* Done"
-}
-
-
-main "$@"
diff --git a/tests/conftest.py b/tests/conftest.py
new file mode 100644
index 0000000..f5baf89
--- /dev/null
+++ b/tests/conftest.py
@@ -0,0 +1,28 @@
+import pytest
+
+from ragger.conftest import configuration
+from .utils import WalletAddr
+
+
+###########################
+### CONFIGURATION START ###
+###########################
+
+# You can configure optional parameters by overriding the value of ragger.configuration.OPTIONAL_CONFIGURATION
+# Please refer to ragger/conftest/configuration.py for their descriptions and accepted values
+
+configuration.OPTIONAL.MAIN_APP_DIR = "tests/.test_dependencies/"
+
+configuration.OPTIONAL.BACKEND_SCOPE = "class"
+
+
+#########################
+### CONFIGURATION END ###
+#########################
+
+# Pull all features from the base ragger conftest using the overridden configuration
+pytest_plugins = ("ragger.conftest.base_conftest", )
+
+@pytest.fixture
+def wallet_addr(backend):
+ return WalletAddr(backend)
diff --git a/tests/globalsetup.js b/tests/globalsetup.js
deleted file mode 100644
index e835233..0000000
--- a/tests/globalsetup.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import Zemu from "@zondax/zemu";
-import fsExtra from "fs-extra";
-
-const catchExit = async () => {
- process.on("SIGINT", () => {
- Zemu.stopAllEmuContainers(function () {
- process.exit();
- });
- });
-};
-
-module.exports = async () => {
- await catchExit();
- await Zemu.checkAndPullImage();
- await Zemu.stopAllEmuContainers();
- fsExtra.emptyDirSync("snapshots/tmp")
-};
\ No newline at end of file
diff --git a/tests/jest.config.js b/tests/jest.config.js
deleted file mode 100644
index af09403..0000000
--- a/tests/jest.config.js
+++ /dev/null
@@ -1,39 +0,0 @@
-// For a detailed explanation regarding each configuration property, visit:
-// https://jestjs.io/docs/en/configuration.html
-
-module.exports = {
- modulePaths: ["/src", "/tests"],
-
- moduleNameMapper: {
- "^jest$": "/jest.js",
- },
-
- // Automatically clear mock calls and instances between every test
- clearMocks: true,
-
- // The directory where Jest should output its coverage files
- coverageDirectory: "coverage",
-
- globalSetup: "/globalsetup.js",
-
- // A list of paths to directories that Jest should use to search for files in
- roots: [""],
-
- runner: "jest-serial-runner",
-
- // The test environment that will be used for testing
- testEnvironment: "node",
-
- // The glob patterns Jest uses to detect test files
- testMatch: [
- "**/__tests__/**/*.[jt]s?(x)",
- "**/?(*.)+(spec|test).[tj]s?(x)",
- "**/?(*.)+(ispec|test).[tj]s?(x)",
- ],
-
- // Path of the file where tests can be """decorated"""
- setupFilesAfterEnv: ['/setupTests.js'],
-
- // Stop immediatly when a test fail
- bail: true,
-};
diff --git a/tests/jest.js b/tests/jest.js
deleted file mode 100644
index 7013ff7..0000000
--- a/tests/jest.js
+++ /dev/null
@@ -1,2 +0,0 @@
-export default jest;
-export const { expect, test } = global;
\ No newline at end of file
diff --git a/tests/networks/bsc/staderlabs/abis/0x7276241a669489e4bbb76f63d2a43bfe63080f2f.json b/tests/networks/bsc/staderlabs/abis/0x7276241a669489e4bbb76f63d2a43bfe63080f2f.json
deleted file mode 100644
index c68ce6a..0000000
--- a/tests/networks/bsc/staderlabs/abis/0x7276241a669489e4bbb76f63d2a43bfe63080f2f.json
+++ /dev/null
@@ -1,845 +0,0 @@
-[
- { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "_account",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_idx",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_amount",
- "type": "uint256"
- }
- ],
- "name": "ClaimWithdrawal",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_uuid",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_amount",
- "type": "uint256"
- }
- ],
- "name": "Delegate",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint8",
- "name": "version",
- "type": "uint8"
- }
- ],
- "name": "Initialized",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "address",
- "name": "account",
- "type": "address"
- }
- ],
- "name": "Paused",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "_address",
- "type": "address"
- }
- ],
- "name": "ProposeManager",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_rewardsId",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_amount",
- "type": "uint256"
- }
- ],
- "name": "Redelegate",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "_account",
- "type": "address"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_amountInBnbX",
- "type": "uint256"
- }
- ],
- "name": "RequestWithdraw",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "_address",
- "type": "address"
- }
- ],
- "name": "RevokeBotRole",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "previousAdminRole",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "newAdminRole",
- "type": "bytes32"
- }
- ],
- "name": "RoleAdminChanged",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "account",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "sender",
- "type": "address"
- }
- ],
- "name": "RoleGranted",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "bytes32",
- "name": "role",
- "type": "bytes32"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "account",
- "type": "address"
- },
- {
- "indexed": true,
- "internalType": "address",
- "name": "sender",
- "type": "address"
- }
- ],
- "name": "RoleRevoked",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "_address",
- "type": "address"
- }
- ],
- "name": "SetBCDepositWallet",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "_address",
- "type": "address"
- }
- ],
- "name": "SetBotRole",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_feeBps",
- "type": "uint256"
- }
- ],
- "name": "SetFeeBps",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": true,
- "internalType": "address",
- "name": "_address",
- "type": "address"
- }
- ],
- "name": "SetManager",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_minDelegateThreshold",
- "type": "uint256"
- }
- ],
- "name": "SetMinDelegateThreshold",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_minUndelegateThreshold",
- "type": "uint256"
- }
- ],
- "name": "SetMinUndelegateThreshold",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_amount",
- "type": "uint256"
- }
- ],
- "name": "TransferOut",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_uuid",
- "type": "uint256"
- },
- {
- "indexed": false,
- "internalType": "uint256",
- "name": "_amount",
- "type": "uint256"
- }
- ],
- "name": "Undelegate",
- "type": "event"
- },
- {
- "anonymous": false,
- "inputs": [
- {
- "indexed": false,
- "internalType": "address",
- "name": "account",
- "type": "address"
- }
- ],
- "name": "Unpaused",
- "type": "event"
- },
- {
- "inputs": [],
- "name": "BOT",
- "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "DEFAULT_ADMIN_ROLE",
- "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "TEN_DECIMALS",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "acceptNewManager",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_id", "type": "uint256" },
- { "internalType": "uint256", "name": "_amount", "type": "uint256" }
- ],
- "name": "addRestakingRewards",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_idx", "type": "uint256" }
- ],
- "name": "claimWithdraw",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" }
- ],
- "name": "completeDelegation",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" }
- ],
- "name": "completeUndelegation",
- "outputs": [],
- "stateMutability": "payable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_amount", "type": "uint256" }
- ],
- "name": "convertBnbToBnbX",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_amountInBnbX", "type": "uint256" }
- ],
- "name": "convertBnbXToBnb",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "deposit",
- "outputs": [],
- "stateMutability": "payable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "depositsBridgingOut",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "depositsDelegated",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "depositsInContract",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "feeBps",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getBnbXWithdrawLimit",
- "outputs": [
- {
- "internalType": "uint256",
- "name": "_bnbXWithdrawLimit",
- "type": "uint256"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" }
- ],
- "name": "getBotDelegateRequest",
- "outputs": [
- {
- "components": [
- { "internalType": "uint256", "name": "startTime", "type": "uint256" },
- { "internalType": "uint256", "name": "endTime", "type": "uint256" },
- { "internalType": "uint256", "name": "amount", "type": "uint256" }
- ],
- "internalType": "struct IStakeManager.BotDelegateRequest",
- "name": "",
- "type": "tuple"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" }
- ],
- "name": "getBotUndelegateRequest",
- "outputs": [
- {
- "components": [
- { "internalType": "uint256", "name": "startTime", "type": "uint256" },
- { "internalType": "uint256", "name": "endTime", "type": "uint256" },
- { "internalType": "uint256", "name": "amount", "type": "uint256" },
- {
- "internalType": "uint256",
- "name": "amountInBnbX",
- "type": "uint256"
- }
- ],
- "internalType": "struct IStakeManager.BotUndelegateRequest",
- "name": "",
- "type": "tuple"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getContracts",
- "outputs": [
- { "internalType": "address", "name": "_manager", "type": "address" },
- { "internalType": "address", "name": "_bnbX", "type": "address" },
- { "internalType": "address", "name": "_tokenHub", "type": "address" },
- {
- "internalType": "address",
- "name": "_bcDepositWallet",
- "type": "address"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getExtraBnbInContract",
- "outputs": [
- { "internalType": "uint256", "name": "_extraBnb", "type": "uint256" }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "bytes32", "name": "role", "type": "bytes32" }
- ],
- "name": "getRoleAdmin",
- "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getTokenHubRelayFee",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getTotalPooledBnb",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "address", "name": "_user", "type": "address" },
- { "internalType": "uint256", "name": "_idx", "type": "uint256" }
- ],
- "name": "getUserRequestStatus",
- "outputs": [
- { "internalType": "bool", "name": "_isClaimable", "type": "bool" },
- { "internalType": "uint256", "name": "_amount", "type": "uint256" }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "address", "name": "_address", "type": "address" }
- ],
- "name": "getUserWithdrawalRequests",
- "outputs": [
- {
- "components": [
- { "internalType": "uint256", "name": "uuid", "type": "uint256" },
- {
- "internalType": "uint256",
- "name": "amountInBnbX",
- "type": "uint256"
- },
- { "internalType": "uint256", "name": "startTime", "type": "uint256" }
- ],
- "internalType": "struct IStakeManager.WithdrawalRequest[]",
- "name": "",
- "type": "tuple[]"
- }
- ],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "bytes32", "name": "role", "type": "bytes32" },
- { "internalType": "address", "name": "account", "type": "address" }
- ],
- "name": "grantRole",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "bytes32", "name": "role", "type": "bytes32" },
- { "internalType": "address", "name": "account", "type": "address" }
- ],
- "name": "hasRole",
- "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "address", "name": "_bnbX", "type": "address" },
- { "internalType": "address", "name": "_admin", "type": "address" },
- { "internalType": "address", "name": "_manager", "type": "address" },
- { "internalType": "address", "name": "_tokenHub", "type": "address" },
- {
- "internalType": "address",
- "name": "_bcDepositWallet",
- "type": "address"
- },
- { "internalType": "address", "name": "_bot", "type": "address" },
- { "internalType": "uint256", "name": "_feeBps", "type": "uint256" }
- ],
- "name": "initialize",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "minDelegateThreshold",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "minUndelegateThreshold",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "nextDelegateUUID",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "nextUndelegateUUID",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "paused",
- "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "address", "name": "_address", "type": "address" }
- ],
- "name": "proposeNewManager",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "bytes32", "name": "role", "type": "bytes32" },
- { "internalType": "address", "name": "account", "type": "address" }
- ],
- "name": "renounceRole",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_amountInBnbX", "type": "uint256" }
- ],
- "name": "requestWithdraw",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" }
- ],
- "name": "retryTransferOut",
- "outputs": [],
- "stateMutability": "payable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "address", "name": "_address", "type": "address" }
- ],
- "name": "revokeBotRole",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "bytes32", "name": "role", "type": "bytes32" },
- { "internalType": "address", "name": "account", "type": "address" }
- ],
- "name": "revokeRole",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "name": "rewardsIdUsed",
- "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "address", "name": "_address", "type": "address" }
- ],
- "name": "setBCDepositWallet",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "address", "name": "_address", "type": "address" }
- ],
- "name": "setBotRole",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_feeBps", "type": "uint256" }
- ],
- "name": "setFeeBps",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- {
- "internalType": "uint256",
- "name": "_minDelegateThreshold",
- "type": "uint256"
- }
- ],
- "name": "setMinDelegateThreshold",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- {
- "internalType": "uint256",
- "name": "_minUndelegateThreshold",
- "type": "uint256"
- }
- ],
- "name": "setMinUndelegateThreshold",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "startDelegation",
- "outputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" },
- { "internalType": "uint256", "name": "_amount", "type": "uint256" }
- ],
- "stateMutability": "payable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "startUndelegation",
- "outputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" },
- { "internalType": "uint256", "name": "_amount", "type": "uint256" }
- ],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" }
- ],
- "name": "supportsInterface",
- "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "togglePause",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "totalBnbXToBurn",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "totalClaimableBnb",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [
- { "internalType": "uint256", "name": "_uuid", "type": "uint256" }
- ],
- "name": "undelegationStarted",
- "outputs": [],
- "stateMutability": "nonpayable",
- "type": "function"
- }
-]
diff --git a/tests/networks/bsc/staderlabs/b2c.json b/tests/networks/bsc/staderlabs/b2c.json
deleted file mode 100644
index cf19fd4..0000000
--- a/tests/networks/bsc/staderlabs/b2c.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "chainId": 56,
- "contracts": [
- {
- "address": "0x7276241a669489e4bbb76f63d2a43bfe63080f2f",
- "contractName": "StakeManager",
- "selectors": {
- "0xd0e30db0": {
- "erc20OfInterest": [],
- "method": "deposit",
- "plugin": "Staderlabs"
- },
- "0x745400c9": {
- "erc20OfInterest": [],
- "method": "requestWithdraw",
- "plugin": "Staderlabs"
- },
- "0xb13acedd": {
- "erc20OfInterest": [],
- "method": "claimWithdraw",
- "plugin": "Staderlabs"
- }
- }
- }
- ],
- "name": "Staderlabs"
-}
diff --git a/tests/networks/ethereum/staderlabs/b2c.json b/tests/networks/ethereum/staderlabs/b2c.json
deleted file mode 100644
index 54c134a..0000000
--- a/tests/networks/ethereum/staderlabs/b2c.json
+++ /dev/null
@@ -1,92 +0,0 @@
-{
- "chainId": 1,
- "contracts": [
- {
- "address": "0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645",
- "contractName": "MaticX",
- "selectors": {
- "0xea99c2a6": {
- "erc20OfInterest": [],
- "method": "submit",
- "plugin": "Staderlabs"
- },
- "0x745400c9": {
- "erc20OfInterest": [],
- "method": "requestWithdraw",
- "plugin": "Staderlabs"
- },
- "0xf8444436": {
- "erc20OfInterest": [],
- "method": "claimWithdrawal",
- "plugin": "Staderlabs"
- }
- }
- },
- {
- "address": "0xcf5ea1b38380f6af39068375516daf40ed70d299",
- "contractName": "StaderStakePoolsManager",
- "selectors": {
- "0xb7482509": {
- "erc20OfInterest": [],
- "method": "deposit",
- "plugin": "Staderlabs"
- }
- }
- },
- {
- "address": "0x9f0491b32dbce587c50c4c43ab303b06478193a7",
- "contractName": "UserWithdrawalManager",
- "selectors": {
- "0x1f7ec122": {
- "erc20OfInterest": [],
- "method": "requestWithdraw",
- "plugin": "Staderlabs"
- },
- "0x379607f5": {
- "erc20OfInterest": [],
- "method": "claim",
- "plugin": "Staderlabs"
- }
- }
- },
- {
- "address": "0x036676389e48133b63a802f8635ad39e752d375d",
- "contractName": "LRTDepositPool",
- "selectors": {
- "0xc3ae1766": {
- "erc20OfInterest": [
- "asset"
- ],
- "method": "depositAsset",
- "plugin": "Staderlabs"
- },
- "0x72c51c0b": {
- "erc20OfInterest": [],
- "method": "depositETH",
- "plugin": "Staderlabs"
- }
- }
- },
- {
- "address": "0x62de59c08eb5dae4b7e6f7a8cad3006d6965ec16",
- "contractName": "LRTWithdrawalManager",
- "selectors": {
- "0xc8393ba9": {
- "erc20OfInterest": [
- "asset"
- ],
- "method": "initiateWithdrawal",
- "plugin": "Staderlabs"
- },
- "0x6dbaf9ee": {
- "erc20OfInterest": [
- "asset"
- ],
- "method": "completeWithdrawal",
- "plugin": "Staderlabs"
- }
- }
- }
- ],
- "name": "Staderlabs"
-}
\ No newline at end of file
diff --git a/tests/networks/polygon/staderlabs/b2c.json b/tests/networks/polygon/staderlabs/b2c.json
deleted file mode 100644
index 925445d..0000000
--- a/tests/networks/polygon/staderlabs/b2c.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "chainId": 137,
- "contracts": [
- {
- "address": "0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3",
- "contractName": "ChildPool",
- "selectors": {
- "0xc78cf1a0": {
- "erc20OfInterest": [],
- "method": "swapMaticForMaticXViaInstantPool",
- "plugin": "Staderlabs"
- },
- "0x48eaf6d6": {
- "erc20OfInterest": [],
- "method": "requestMaticXSwap",
- "plugin": "Staderlabs"
- },
- "0x77baf209": {
- "erc20OfInterest": [],
- "method": "claimMaticXSwap",
- "plugin": "Staderlabs"
- }
- }
- }
- ],
- "name": "Staderlabs"
-}
diff --git a/tests/package.json b/tests/package.json
deleted file mode 100644
index 803b72f..0000000
--- a/tests/package.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "name": "swap-test",
- "version": "1.0.0",
- "description": "",
- "main": "test.js",
- "scripts": {
- "build": "babel src/ -d lib/",
- "prepublish": "yarn run build",
- "test": "jest src --verbose --runInBand --detectOpenHandles"
- },
- "author": "",
- "license": "ISC",
- "dependencies": {
- "@babel/plugin-proposal-class-properties": "^7.14.5",
- "@ledgerhq/hw-app-eth": "^6.33.7",
- "@ledgerhq/hw-transport-http": "^6.28.0",
- "@ledgerhq/logs": "^6.2.0",
- "@zondax/zemu": "^0.43.1",
- "bip32-path": "^0.4.2",
- "core-js": "^3.31.1",
- "ethereum-tx-decoder": "^3.0.0",
- "ethers": "^5.6.3",
- "fs-extra": "^10.0.0",
- "google-protobuf": "^3.11.0",
- "jest-serial-runner": "^1.2.1",
- "js-sha256": "^0.9.0",
- "regenerator-runtime": "^0.13.9",
- "secp256k1": "^3.7.1"
- },
- "devDependencies": {
- "@babel/cli": "^7.22.6",
- "@babel/core": "^7.22.8",
- "@babel/preset-env": "^7.22.7",
- "@babel/preset-flow": "^7.22.5",
- "@babel/preset-stage-0": "^7.0.0",
- "@babel/register": "^7.22.5",
- "flow-bin": "^0.112.0",
- "jest": "29.6.1"
- }
-}
diff --git a/tests/requirements.txt b/tests/requirements.txt
new file mode 100644
index 0000000..0720448
--- /dev/null
+++ b/tests/requirements.txt
@@ -0,0 +1,3 @@
+ledger_app_clients.ethereum
+pytest
+ragger[speculos,ledgercomm]
diff --git a/tests/setup.cfg b/tests/setup.cfg
new file mode 100644
index 0000000..7d0d7e3
--- /dev/null
+++ b/tests/setup.cfg
@@ -0,0 +1,21 @@
+[tool:pytest]
+addopts = --strict-markers
+
+[pylint]
+disable = C0114, # missing-module-docstring
+ C0115, # missing-class-docstring
+ C0116, # missing-function-docstring
+ C0103, # invalid-name
+ R0801, # duplicate-code
+ R0913 # too-many-arguments
+max-line-length=100
+extension-pkg-whitelist=hid
+
+[pycodestyle]
+max-line-length = 100
+
+[mypy-hid.*]
+ignore_missing_imports = True
+
+[mypy-pytest.*]
+ignore_missing_imports = True
diff --git a/tests/setupTests.js b/tests/setupTests.js
deleted file mode 100644
index cbd0230..0000000
--- a/tests/setupTests.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import expect from 'expect'
-
-expect.extend({
- toMatchSnapshot(received, original) {
-
- if(received.data.equals(original.data)){
- return {
- message: () => `snapshots are equal`,
- pass: true
- }
- } else {
- console.log("snapshots are not equal")
- return {
- message: () => `snapshots are not equal`,
- pass: false
- }
- }
- },
- });
\ No newline at end of file
diff --git a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00004.png b/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00004.png
deleted file mode 100644
index bbe5c0a..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_deposit/00002.png b/tests/snapshots/bsc_bnbx_nanos_deposit/00002.png
deleted file mode 100644
index a73cf23..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanos_deposit/00002.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_deposit/00004.png b/tests/snapshots/bsc_bnbx_nanos_deposit/00004.png
deleted file mode 100644
index bbe5c0a..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanos_deposit/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00002.png b/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00002.png
deleted file mode 100644
index fe6e697..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00002.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00004.png b/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00004.png
deleted file mode 100644
index bbe5c0a..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00004.png b/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00004.png
deleted file mode 100644
index 02dee0e..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_deposit/00002.png b/tests/snapshots/bsc_bnbx_nanosp_deposit/00002.png
deleted file mode 100644
index b7cb101..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanosp_deposit/00002.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_deposit/00004.png b/tests/snapshots/bsc_bnbx_nanosp_deposit/00004.png
deleted file mode 100644
index 02dee0e..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanosp_deposit/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00002.png b/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00002.png
deleted file mode 100644
index b1c2853..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00002.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00004.png b/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00004.png
deleted file mode 100644
index 02dee0e..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00004.png b/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00004.png
deleted file mode 100644
index 02dee0e..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_deposit/00002.png b/tests/snapshots/bsc_bnbx_nanox_deposit/00002.png
deleted file mode 100644
index b7cb101..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanox_deposit/00002.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_deposit/00004.png b/tests/snapshots/bsc_bnbx_nanox_deposit/00004.png
deleted file mode 100644
index 02dee0e..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanox_deposit/00004.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00002.png b/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00002.png
deleted file mode 100644
index b1c2853..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00002.png and /dev/null differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00004.png b/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00004.png
deleted file mode 100644
index 02dee0e..0000000
Binary files a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00003.png b/tests/snapshots/ethereum_ethx_nanos_claim_eth/00003.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00004.png b/tests/snapshots/ethereum_ethx_nanos_claim_eth/00004.png
deleted file mode 100644
index 80184e0..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00005.png b/tests/snapshots/ethereum_ethx_nanos_claim_eth/00005.png
deleted file mode 100644
index b35237d..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00006.png b/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00006.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00007.png b/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00007.png
deleted file mode 100644
index 0761958..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00007.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00008.png b/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00008.png
deleted file mode 100644
index 9e62ae6..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00008.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00006.png b/tests/snapshots/ethereum_ethx_nanos_stake_eth/00006.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00007.png b/tests/snapshots/ethereum_ethx_nanos_stake_eth/00007.png
deleted file mode 100644
index 35b81a0..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00007.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00008.png b/tests/snapshots/ethereum_ethx_nanos_stake_eth/00008.png
deleted file mode 100644
index 822e4ff..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00008.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00003.png b/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00003.png
deleted file mode 100644
index 1ab0e92..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00004.png b/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00004.png
deleted file mode 100644
index 79ecbf6..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00004.png b/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00004.png
deleted file mode 100644
index 0b28391..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanox_claim_eth/00003.png b/tests/snapshots/ethereum_ethx_nanox_claim_eth/00003.png
deleted file mode 100644
index 1ab0e92..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanox_claim_eth/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00004.png b/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00004.png
deleted file mode 100644
index 79ecbf6..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00004.png b/tests/snapshots/ethereum_ethx_nanox_stake_eth/00004.png
deleted file mode 100644
index 0b28391..0000000
Binary files a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00001.png b/tests/snapshots/ethereum_kelp_claim_eth_nanos/00001.png
deleted file mode 100644
index a8889a8..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00002.png b/tests/snapshots/ethereum_kelp_claim_eth_nanos/00002.png
deleted file mode 100644
index 48d0f86..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00003.png b/tests/snapshots/ethereum_kelp_claim_eth_nanos/00003.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00004.png b/tests/snapshots/ethereum_kelp_claim_eth_nanos/00004.png
deleted file mode 100644
index b66bc3c..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00005.png b/tests/snapshots/ethereum_kelp_claim_eth_nanos/00005.png
deleted file mode 100644
index 0e8ca1b..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00001.png b/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00001.png
deleted file mode 100644
index 460363c..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00002.png b/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00002.png
deleted file mode 100644
index 62fd4e7..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00003.png b/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00003.png
deleted file mode 100644
index e1452e9..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00001.png b/tests/snapshots/ethereum_kelp_claim_eth_nanox/00001.png
deleted file mode 100644
index 460363c..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00002.png b/tests/snapshots/ethereum_kelp_claim_eth_nanox/00002.png
deleted file mode 100644
index 62fd4e7..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00003.png b/tests/snapshots/ethereum_kelp_claim_eth_nanox/00003.png
deleted file mode 100644
index e1452e9..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00001.png b/tests/snapshots/ethereum_kelp_claim_lst_nanos/00001.png
deleted file mode 100644
index a8889a8..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00002.png b/tests/snapshots/ethereum_kelp_claim_lst_nanos/00002.png
deleted file mode 100644
index c410454..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00003.png b/tests/snapshots/ethereum_kelp_claim_lst_nanos/00003.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00004.png b/tests/snapshots/ethereum_kelp_claim_lst_nanos/00004.png
deleted file mode 100644
index 2129c85..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00005.png b/tests/snapshots/ethereum_kelp_claim_lst_nanos/00005.png
deleted file mode 100644
index a402456..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00001.png b/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00001.png
deleted file mode 100644
index 460363c..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00002.png b/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00002.png
deleted file mode 100644
index 47010a7..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00003.png b/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00003.png
deleted file mode 100644
index 6b87502..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00001.png b/tests/snapshots/ethereum_kelp_claim_lst_nanox/00001.png
deleted file mode 100644
index 460363c..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00002.png b/tests/snapshots/ethereum_kelp_claim_lst_nanox/00002.png
deleted file mode 100644
index 47010a7..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00003.png b/tests/snapshots/ethereum_kelp_claim_lst_nanox/00003.png
deleted file mode 100644
index 6b87502..0000000
Binary files a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00001.png b/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00001.png
deleted file mode 100644
index 106ecf6..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00002.png b/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00002.png
deleted file mode 100644
index 5715b23..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00003.png b/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00003.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00004.png b/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00004.png
deleted file mode 100644
index d959a36..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00005.png b/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00005.png
deleted file mode 100644
index 96fac90..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00006.png b/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00006.png
deleted file mode 100644
index 1c9156c..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00007.png b/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00007.png
deleted file mode 100644
index ce795f3..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00007.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00001.png b/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00001.png
deleted file mode 100644
index 5cc2653..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00002.png b/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00002.png
deleted file mode 100644
index 39e88bb..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00003.png b/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00003.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00004.png b/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00004.png
deleted file mode 100644
index 88e9c19..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00005.png b/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00005.png
deleted file mode 100644
index 7782392..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00006.png b/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00006.png
deleted file mode 100644
index 1c9156c..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00007.png b/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00007.png
deleted file mode 100644
index ce795f3..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00007.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00001.png b/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00001.png
deleted file mode 100644
index 3af4214..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00002.png b/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00002.png
deleted file mode 100644
index c81699b..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00003.png b/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00003.png
deleted file mode 100644
index 13005df..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00001.png b/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00001.png
deleted file mode 100644
index c8cae1c..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00002.png b/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00002.png
deleted file mode 100644
index 348cdcf..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00003.png b/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00003.png
deleted file mode 100644
index b34ebc2..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00001.png b/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00001.png
deleted file mode 100644
index 3af4214..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00002.png b/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00002.png
deleted file mode 100644
index c81699b..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00003.png b/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00003.png
deleted file mode 100644
index 13005df..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00004.png b/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00005.png b/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00001.png b/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00001.png
deleted file mode 100644
index c8cae1c..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00002.png b/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00002.png
deleted file mode 100644
index 348cdcf..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00003.png b/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00003.png
deleted file mode 100644
index b34ebc2..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00004.png b/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00005.png b/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00001.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00001.png
deleted file mode 100644
index 3ac7050..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00002.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00002.png
deleted file mode 100644
index 748a5ef..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00003.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00003.png
deleted file mode 100644
index 3fb2cea..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00004.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00004.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00005.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00005.png
deleted file mode 100644
index 734e7b2..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00006.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00006.png
deleted file mode 100644
index 7307247..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00001.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00001.png
deleted file mode 100644
index 6c7d10e..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00002.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00002.png
deleted file mode 100644
index 83a4a4e..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00003.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00003.png
deleted file mode 100644
index c94a771..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00004.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00004.png
deleted file mode 100644
index 632c2fa..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00001.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00001.png
deleted file mode 100644
index 6c7d10e..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00002.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00002.png
deleted file mode 100644
index 83a4a4e..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00003.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00003.png
deleted file mode 100644
index c94a771..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00004.png b/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00004.png
deleted file mode 100644
index 632c2fa..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00001.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00001.png
deleted file mode 100644
index 3ac7050..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00002.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00002.png
deleted file mode 100644
index adc6579..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00003.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00003.png
deleted file mode 100644
index 49bbb9f..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00004.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00004.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00005.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00005.png
deleted file mode 100644
index 93dcb75..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00006.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00006.png
deleted file mode 100644
index 2f38728..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00001.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00001.png
deleted file mode 100644
index 6c7d10e..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00002.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00002.png
deleted file mode 100644
index f16a51d..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00003.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00003.png
deleted file mode 100644
index 93fcf44..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00004.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00004.png
deleted file mode 100644
index c206d4f..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00001.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00001.png
deleted file mode 100644
index 6c7d10e..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00001.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00002.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00002.png
deleted file mode 100644
index f16a51d..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00002.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00003.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00003.png
deleted file mode 100644
index 93fcf44..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00004.png b/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00004.png
deleted file mode 100644
index c206d4f..0000000
Binary files a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00000.png b/tests/snapshots/ethereum_maticx_nanos_claim_matic/00000.png
deleted file mode 100644
index 8d84cc7..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00003.png b/tests/snapshots/ethereum_maticx_nanos_claim_matic/00003.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00004.png b/tests/snapshots/ethereum_maticx_nanos_claim_matic/00004.png
deleted file mode 100644
index 3833b95..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00005.png b/tests/snapshots/ethereum_maticx_nanos_claim_matic/00005.png
deleted file mode 100644
index 51bdbc3..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00006.png b/tests/snapshots/ethereum_maticx_nanos_claim_matic/00006.png
deleted file mode 100644
index 1c9156c..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00007.png b/tests/snapshots/ethereum_maticx_nanos_claim_matic/00007.png
deleted file mode 100644
index ce795f3..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00007.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00000.png b/tests/snapshots/ethereum_maticx_nanos_stake_matic/00000.png
deleted file mode 100644
index 8d84cc7..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00003.png b/tests/snapshots/ethereum_maticx_nanos_stake_matic/00003.png
deleted file mode 100644
index 9be5d26..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00004.png b/tests/snapshots/ethereum_maticx_nanos_stake_matic/00004.png
deleted file mode 100644
index 6701ff0..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00000.png b/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00000.png
deleted file mode 100644
index 8d84cc7..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00003.png b/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00003.png
deleted file mode 100644
index 1595331..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00004.png b/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00004.png
deleted file mode 100644
index 121ed05..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00005.png b/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00005.png
deleted file mode 100644
index d0bd741..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00006.png b/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00006.png
deleted file mode 100644
index 1c9156c..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00006.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00007.png b/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00007.png
deleted file mode 100644
index ce795f3..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00007.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00000.png b/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00003.png b/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00003.png
deleted file mode 100644
index da9e1b2..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00004.png b/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00005.png b/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00000.png b/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00003.png b/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00003.png
deleted file mode 100644
index a4d0243..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00004.png b/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00005.png b/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00000.png b/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00003.png b/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00003.png
deleted file mode 100644
index f9d64d1..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00004.png b/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00005.png b/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00000.png b/tests/snapshots/ethereum_maticx_nanox_claim_matic/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00003.png b/tests/snapshots/ethereum_maticx_nanox_claim_matic/00003.png
deleted file mode 100644
index da9e1b2..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00004.png b/tests/snapshots/ethereum_maticx_nanox_claim_matic/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00005.png b/tests/snapshots/ethereum_maticx_nanox_claim_matic/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00000.png b/tests/snapshots/ethereum_maticx_nanox_stake_matic/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00003.png b/tests/snapshots/ethereum_maticx_nanox_stake_matic/00003.png
deleted file mode 100644
index a4d0243..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00004.png b/tests/snapshots/ethereum_maticx_nanox_stake_matic/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00005.png b/tests/snapshots/ethereum_maticx_nanox_stake_matic/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00005.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00000.png b/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00000.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00003.png b/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00003.png
deleted file mode 100644
index f9d64d1..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00003.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00004.png b/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00004.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00004.png and /dev/null differ
diff --git a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00005.png b/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00005.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00005.png and /dev/null differ
diff --git a/tests/snapshots/flex/test_bnbx_claim_withdraw/00000.png b/tests/snapshots/flex/test_bnbx_claim_withdraw/00000.png
new file mode 100644
index 0000000..42feb5c
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_claim_withdraw/00000.png differ
diff --git a/tests/snapshots/flex/test_bnbx_claim_withdraw/00001.png b/tests/snapshots/flex/test_bnbx_claim_withdraw/00001.png
new file mode 100644
index 0000000..c8e9156
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_claim_withdraw/00001.png differ
diff --git a/tests/snapshots/flex/test_bnbx_claim_withdraw/00002.png b/tests/snapshots/flex/test_bnbx_claim_withdraw/00002.png
new file mode 100644
index 0000000..20902b4
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_claim_withdraw/00002.png differ
diff --git a/tests/snapshots/flex/test_bnbx_claim_withdraw/00003.png b/tests/snapshots/flex/test_bnbx_claim_withdraw/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_claim_withdraw/00003.png differ
diff --git a/tests/snapshots/flex/test_bnbx_claim_withdraw/00004.png b/tests/snapshots/flex/test_bnbx_claim_withdraw/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_claim_withdraw/00004.png differ
diff --git a/tests/snapshots/flex/test_bnbx_deposit/00000.png b/tests/snapshots/flex/test_bnbx_deposit/00000.png
new file mode 100644
index 0000000..57c79fd
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_deposit/00000.png differ
diff --git a/tests/snapshots/flex/test_bnbx_deposit/00001.png b/tests/snapshots/flex/test_bnbx_deposit/00001.png
new file mode 100644
index 0000000..58f7ebc
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_deposit/00001.png differ
diff --git a/tests/snapshots/flex/test_bnbx_deposit/00002.png b/tests/snapshots/flex/test_bnbx_deposit/00002.png
new file mode 100644
index 0000000..9fd4297
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_deposit/00002.png differ
diff --git a/tests/snapshots/flex/test_bnbx_deposit/00003.png b/tests/snapshots/flex/test_bnbx_deposit/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_deposit/00003.png differ
diff --git a/tests/snapshots/flex/test_bnbx_deposit/00004.png b/tests/snapshots/flex/test_bnbx_deposit/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_deposit/00004.png differ
diff --git a/tests/snapshots/flex/test_bnbx_request_withdraw/00000.png b/tests/snapshots/flex/test_bnbx_request_withdraw/00000.png
new file mode 100644
index 0000000..243badd
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_request_withdraw/00000.png differ
diff --git a/tests/snapshots/flex/test_bnbx_request_withdraw/00001.png b/tests/snapshots/flex/test_bnbx_request_withdraw/00001.png
new file mode 100644
index 0000000..158a9ec
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_request_withdraw/00001.png differ
diff --git a/tests/snapshots/flex/test_bnbx_request_withdraw/00002.png b/tests/snapshots/flex/test_bnbx_request_withdraw/00002.png
new file mode 100644
index 0000000..522822d
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_request_withdraw/00002.png differ
diff --git a/tests/snapshots/flex/test_bnbx_request_withdraw/00003.png b/tests/snapshots/flex/test_bnbx_request_withdraw/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_request_withdraw/00003.png differ
diff --git a/tests/snapshots/flex/test_bnbx_request_withdraw/00004.png b/tests/snapshots/flex/test_bnbx_request_withdraw/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_bnbx_request_withdraw/00004.png differ
diff --git a/tests/snapshots/flex/test_ethx_claim/00000.png b/tests/snapshots/flex/test_ethx_claim/00000.png
new file mode 100644
index 0000000..42feb5c
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_claim/00000.png differ
diff --git a/tests/snapshots/flex/test_ethx_claim/00001.png b/tests/snapshots/flex/test_ethx_claim/00001.png
new file mode 100644
index 0000000..03412a5
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_claim/00001.png differ
diff --git a/tests/snapshots/flex/test_ethx_claim/00002.png b/tests/snapshots/flex/test_ethx_claim/00002.png
new file mode 100644
index 0000000..20902b4
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_claim/00002.png differ
diff --git a/tests/snapshots/flex/test_ethx_claim/00003.png b/tests/snapshots/flex/test_ethx_claim/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_claim/00003.png differ
diff --git a/tests/snapshots/flex/test_ethx_claim/00004.png b/tests/snapshots/flex/test_ethx_claim/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_claim/00004.png differ
diff --git a/tests/snapshots/flex/test_ethx_deposit/00000.png b/tests/snapshots/flex/test_ethx_deposit/00000.png
new file mode 100644
index 0000000..57c79fd
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_deposit/00000.png differ
diff --git a/tests/snapshots/flex/test_ethx_deposit/00001.png b/tests/snapshots/flex/test_ethx_deposit/00001.png
new file mode 100644
index 0000000..1d5776b
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_deposit/00001.png differ
diff --git a/tests/snapshots/flex/test_ethx_deposit/00002.png b/tests/snapshots/flex/test_ethx_deposit/00002.png
new file mode 100644
index 0000000..9fd4297
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_deposit/00002.png differ
diff --git a/tests/snapshots/flex/test_ethx_deposit/00003.png b/tests/snapshots/flex/test_ethx_deposit/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_deposit/00003.png differ
diff --git a/tests/snapshots/flex/test_ethx_deposit/00004.png b/tests/snapshots/flex/test_ethx_deposit/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_deposit/00004.png differ
diff --git a/tests/snapshots/flex/test_ethx_withdraw/00000.png b/tests/snapshots/flex/test_ethx_withdraw/00000.png
new file mode 100644
index 0000000..243badd
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_withdraw/00000.png differ
diff --git a/tests/snapshots/flex/test_ethx_withdraw/00001.png b/tests/snapshots/flex/test_ethx_withdraw/00001.png
new file mode 100644
index 0000000..22fe387
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_withdraw/00001.png differ
diff --git a/tests/snapshots/flex/test_ethx_withdraw/00002.png b/tests/snapshots/flex/test_ethx_withdraw/00002.png
new file mode 100644
index 0000000..522822d
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_withdraw/00002.png differ
diff --git a/tests/snapshots/flex/test_ethx_withdraw/00003.png b/tests/snapshots/flex/test_ethx_withdraw/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_withdraw/00003.png differ
diff --git a/tests/snapshots/flex/test_ethx_withdraw/00004.png b/tests/snapshots/flex/test_ethx_withdraw/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_ethx_withdraw/00004.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_maticx_swap/00000.png b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00000.png
new file mode 100644
index 0000000..42feb5c
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00000.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_maticx_swap/00001.png b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00001.png
new file mode 100644
index 0000000..7be5d14
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00001.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_maticx_swap/00002.png b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00002.png
new file mode 100644
index 0000000..20902b4
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00002.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_maticx_swap/00003.png b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00003.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_maticx_swap/00004.png b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_maticx_swap/00004.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_withdrawal/00000.png b/tests/snapshots/flex/test_maticx_claim_withdrawal/00000.png
new file mode 100644
index 0000000..42feb5c
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_withdrawal/00000.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_withdrawal/00001.png b/tests/snapshots/flex/test_maticx_claim_withdrawal/00001.png
new file mode 100644
index 0000000..b4ad239
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_withdrawal/00001.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_withdrawal/00002.png b/tests/snapshots/flex/test_maticx_claim_withdrawal/00002.png
new file mode 100644
index 0000000..20902b4
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_withdrawal/00002.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_withdrawal/00003.png b/tests/snapshots/flex/test_maticx_claim_withdrawal/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_withdrawal/00003.png differ
diff --git a/tests/snapshots/flex/test_maticx_claim_withdrawal/00004.png b/tests/snapshots/flex/test_maticx_claim_withdrawal/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_claim_withdrawal/00004.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_maticx_swap/00000.png b/tests/snapshots/flex/test_maticx_request_maticx_swap/00000.png
new file mode 100644
index 0000000..243badd
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_maticx_swap/00000.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_maticx_swap/00001.png b/tests/snapshots/flex/test_maticx_request_maticx_swap/00001.png
new file mode 100644
index 0000000..30fb282
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_maticx_swap/00001.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_maticx_swap/00002.png b/tests/snapshots/flex/test_maticx_request_maticx_swap/00002.png
new file mode 100644
index 0000000..522822d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_maticx_swap/00002.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_maticx_swap/00003.png b/tests/snapshots/flex/test_maticx_request_maticx_swap/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_maticx_swap/00003.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_maticx_swap/00004.png b/tests/snapshots/flex/test_maticx_request_maticx_swap/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_maticx_swap/00004.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_withdraw/00000.png b/tests/snapshots/flex/test_maticx_request_withdraw/00000.png
new file mode 100644
index 0000000..243badd
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_withdraw/00000.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_withdraw/00001.png b/tests/snapshots/flex/test_maticx_request_withdraw/00001.png
new file mode 100644
index 0000000..b98d273
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_withdraw/00001.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_withdraw/00002.png b/tests/snapshots/flex/test_maticx_request_withdraw/00002.png
new file mode 100644
index 0000000..522822d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_withdraw/00002.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_withdraw/00003.png b/tests/snapshots/flex/test_maticx_request_withdraw/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_withdraw/00003.png differ
diff --git a/tests/snapshots/flex/test_maticx_request_withdraw/00004.png b/tests/snapshots/flex/test_maticx_request_withdraw/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_request_withdraw/00004.png differ
diff --git a/tests/snapshots/flex/test_maticx_submit/00000.png b/tests/snapshots/flex/test_maticx_submit/00000.png
new file mode 100644
index 0000000..57c79fd
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_submit/00000.png differ
diff --git a/tests/snapshots/flex/test_maticx_submit/00001.png b/tests/snapshots/flex/test_maticx_submit/00001.png
new file mode 100644
index 0000000..1a2dae1
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_submit/00001.png differ
diff --git a/tests/snapshots/flex/test_maticx_submit/00002.png b/tests/snapshots/flex/test_maticx_submit/00002.png
new file mode 100644
index 0000000..9fd4297
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_submit/00002.png differ
diff --git a/tests/snapshots/flex/test_maticx_submit/00003.png b/tests/snapshots/flex/test_maticx_submit/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_submit/00003.png differ
diff --git a/tests/snapshots/flex/test_maticx_submit/00004.png b/tests/snapshots/flex/test_maticx_submit/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_submit/00004.png differ
diff --git a/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
new file mode 100644
index 0000000..57c79fd
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png differ
diff --git a/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
new file mode 100644
index 0000000..bd0650d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png differ
diff --git a/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png
new file mode 100644
index 0000000..9fd4297
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png differ
diff --git a/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
new file mode 100644
index 0000000..be51a9d
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png differ
diff --git a/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png
new file mode 100644
index 0000000..dabe7af
Binary files /dev/null and b/tests/snapshots/flex/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00000.png b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00000.png
rename to tests/snapshots/nanos/test_bnbx_claim_withdraw/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00001.png b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00001.png
rename to tests/snapshots/nanos/test_bnbx_claim_withdraw/00001.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00002.png b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00002.png
rename to tests/snapshots/nanos/test_bnbx_claim_withdraw/00002.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00003.png b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00003.png
rename to tests/snapshots/nanos/test_bnbx_claim_withdraw/00003.png
diff --git a/tests/snapshots/nanos/test_bnbx_claim_withdraw/00004.png b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00004.png
new file mode 100644
index 0000000..461fbab
Binary files /dev/null and b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00005.png b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00005.png
rename to tests/snapshots/nanos/test_bnbx_claim_withdraw/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00006.png b/tests/snapshots/nanos/test_bnbx_claim_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_claim_withdraw/00006.png
rename to tests/snapshots/nanos/test_bnbx_claim_withdraw/00006.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_deposit/00000.png b/tests/snapshots/nanos/test_bnbx_deposit/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_deposit/00000.png
rename to tests/snapshots/nanos/test_bnbx_deposit/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_deposit/00001.png b/tests/snapshots/nanos/test_bnbx_deposit/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_deposit/00001.png
rename to tests/snapshots/nanos/test_bnbx_deposit/00001.png
diff --git a/tests/snapshots/nanos/test_bnbx_deposit/00002.png b/tests/snapshots/nanos/test_bnbx_deposit/00002.png
new file mode 100644
index 0000000..f7a864f
Binary files /dev/null and b/tests/snapshots/nanos/test_bnbx_deposit/00002.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_deposit/00003.png b/tests/snapshots/nanos/test_bnbx_deposit/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_deposit/00003.png
rename to tests/snapshots/nanos/test_bnbx_deposit/00003.png
diff --git a/tests/snapshots/nanos/test_bnbx_deposit/00004.png b/tests/snapshots/nanos/test_bnbx_deposit/00004.png
new file mode 100644
index 0000000..461fbab
Binary files /dev/null and b/tests/snapshots/nanos/test_bnbx_deposit/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_deposit/00005.png b/tests/snapshots/nanos/test_bnbx_deposit/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_deposit/00005.png
rename to tests/snapshots/nanos/test_bnbx_deposit/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_deposit/00006.png b/tests/snapshots/nanos/test_bnbx_deposit/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_deposit/00006.png
rename to tests/snapshots/nanos/test_bnbx_deposit/00006.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00000.png b/tests/snapshots/nanos/test_bnbx_request_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_request_withdraw/00000.png
rename to tests/snapshots/nanos/test_bnbx_request_withdraw/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00001.png b/tests/snapshots/nanos/test_bnbx_request_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_request_withdraw/00001.png
rename to tests/snapshots/nanos/test_bnbx_request_withdraw/00001.png
diff --git a/tests/snapshots/nanos/test_bnbx_request_withdraw/00002.png b/tests/snapshots/nanos/test_bnbx_request_withdraw/00002.png
new file mode 100644
index 0000000..8bed304
Binary files /dev/null and b/tests/snapshots/nanos/test_bnbx_request_withdraw/00002.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00003.png b/tests/snapshots/nanos/test_bnbx_request_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_request_withdraw/00003.png
rename to tests/snapshots/nanos/test_bnbx_request_withdraw/00003.png
diff --git a/tests/snapshots/nanos/test_bnbx_request_withdraw/00004.png b/tests/snapshots/nanos/test_bnbx_request_withdraw/00004.png
new file mode 100644
index 0000000..461fbab
Binary files /dev/null and b/tests/snapshots/nanos/test_bnbx_request_withdraw/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00005.png b/tests/snapshots/nanos/test_bnbx_request_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_request_withdraw/00005.png
rename to tests/snapshots/nanos/test_bnbx_request_withdraw/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanos_request_withdraw/00006.png b/tests/snapshots/nanos/test_bnbx_request_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanos_request_withdraw/00006.png
rename to tests/snapshots/nanos/test_bnbx_request_withdraw/00006.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00000.png b/tests/snapshots/nanos/test_ethx_claim/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_claim_eth/00000.png
rename to tests/snapshots/nanos/test_ethx_claim/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00001.png b/tests/snapshots/nanos/test_ethx_claim/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_claim_eth/00001.png
rename to tests/snapshots/nanos/test_ethx_claim/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00002.png b/tests/snapshots/nanos/test_ethx_claim/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_claim_eth/00002.png
rename to tests/snapshots/nanos/test_ethx_claim/00002.png
diff --git a/tests/snapshots/nanos/test_ethx_claim/00003.png b/tests/snapshots/nanos/test_ethx_claim/00003.png
new file mode 100644
index 0000000..1492e09
Binary files /dev/null and b/tests/snapshots/nanos/test_ethx_claim/00003.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00006.png b/tests/snapshots/nanos/test_ethx_claim/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_claim_eth/00006.png
rename to tests/snapshots/nanos/test_ethx_claim/00004.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_claim_eth/00007.png b/tests/snapshots/nanos/test_ethx_claim/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_claim_eth/00007.png
rename to tests/snapshots/nanos/test_ethx_claim/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00000.png b/tests/snapshots/nanos/test_ethx_deposit/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00000.png
rename to tests/snapshots/nanos/test_ethx_deposit/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00001.png b/tests/snapshots/nanos/test_ethx_deposit/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00001.png
rename to tests/snapshots/nanos/test_ethx_deposit/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00002.png b/tests/snapshots/nanos/test_ethx_deposit/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00002.png
rename to tests/snapshots/nanos/test_ethx_deposit/00002.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00003.png b/tests/snapshots/nanos/test_ethx_deposit/00003.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00003.png
rename to tests/snapshots/nanos/test_ethx_deposit/00003.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00004.png b/tests/snapshots/nanos/test_ethx_deposit/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00004.png
rename to tests/snapshots/nanos/test_ethx_deposit/00004.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00005.png b/tests/snapshots/nanos/test_ethx_deposit/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00005.png
rename to tests/snapshots/nanos/test_ethx_deposit/00005.png
diff --git a/tests/snapshots/nanos/test_ethx_deposit/00006.png b/tests/snapshots/nanos/test_ethx_deposit/00006.png
new file mode 100644
index 0000000..1492e09
Binary files /dev/null and b/tests/snapshots/nanos/test_ethx_deposit/00006.png differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00007.png b/tests/snapshots/nanos/test_ethx_deposit/00007.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanos/00007.png
rename to tests/snapshots/nanos/test_ethx_deposit/00007.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00008.png b/tests/snapshots/nanos/test_ethx_deposit/00008.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanos/00008.png
rename to tests/snapshots/nanos/test_ethx_deposit/00008.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00000.png b/tests/snapshots/nanos/test_ethx_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00000.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00001.png b/tests/snapshots/nanos/test_ethx_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00001.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00002.png b/tests/snapshots/nanos/test_ethx_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00002.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00002.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00003.png b/tests/snapshots/nanos/test_ethx_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00003.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00003.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00004.png b/tests/snapshots/nanos/test_ethx_withdraw/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00004.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00004.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00005.png b/tests/snapshots/nanos/test_ethx_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00005.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00005.png
diff --git a/tests/snapshots/nanos/test_ethx_withdraw/00006.png b/tests/snapshots/nanos/test_ethx_withdraw/00006.png
new file mode 100644
index 0000000..1492e09
Binary files /dev/null and b/tests/snapshots/nanos/test_ethx_withdraw/00006.png differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00007.png b/tests/snapshots/nanos/test_ethx_withdraw/00007.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanos/00007.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00007.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00008.png b/tests/snapshots/nanos/test_ethx_withdraw/00008.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanos/00008.png
rename to tests/snapshots/nanos/test_ethx_withdraw/00008.png
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00000.png b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanos/00000.png
rename to tests/snapshots/nanos/test_maticx_claim_maticx_swap/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00001.png b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_claim_matic/00001.png
rename to tests/snapshots/nanos/test_maticx_claim_maticx_swap/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanos_claim_matic/00002.png b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_claim_matic/00002.png
rename to tests/snapshots/nanos/test_maticx_claim_maticx_swap/00002.png
diff --git a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00003.png b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00003.png
rename to tests/snapshots/nanos/test_maticx_claim_maticx_swap/00003.png
diff --git a/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00004.png b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00004.png
new file mode 100644
index 0000000..5ff6e1c
Binary files /dev/null and b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00004.png differ
diff --git a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00005.png b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_stake_matic/00005.png
rename to tests/snapshots/nanos/test_maticx_claim_maticx_swap/00005.png
diff --git a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00006.png b/tests/snapshots/nanos/test_maticx_claim_maticx_swap/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_stake_matic/00006.png
rename to tests/snapshots/nanos/test_maticx_claim_maticx_swap/00006.png
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00000.png b/tests/snapshots/nanos/test_maticx_claim_withdrawal/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanos/00000.png
rename to tests/snapshots/nanos/test_maticx_claim_withdrawal/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00001.png b/tests/snapshots/nanos/test_maticx_claim_withdrawal/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00001.png
rename to tests/snapshots/nanos/test_maticx_claim_withdrawal/00001.png
diff --git a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00002.png b/tests/snapshots/nanos/test_maticx_claim_withdrawal/00002.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00002.png
rename to tests/snapshots/nanos/test_maticx_claim_withdrawal/00002.png
diff --git a/tests/snapshots/nanos/test_maticx_claim_withdrawal/00003.png b/tests/snapshots/nanos/test_maticx_claim_withdrawal/00003.png
new file mode 100644
index 0000000..1492e09
Binary files /dev/null and b/tests/snapshots/nanos/test_maticx_claim_withdrawal/00003.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00009.png b/tests/snapshots/nanos/test_maticx_claim_withdrawal/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00009.png
rename to tests/snapshots/nanos/test_maticx_claim_withdrawal/00004.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00010.png b/tests/snapshots/nanos/test_maticx_claim_withdrawal/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_request_withdraw_eth/00010.png
rename to tests/snapshots/nanos/test_maticx_claim_withdrawal/00005.png
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_eth/00000.png b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanos_deposit_eth/00000.png
rename to tests/snapshots/nanos/test_maticx_request_maticx_swap/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00001.png b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00001.png
rename to tests/snapshots/nanos/test_maticx_request_maticx_swap/00001.png
diff --git a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00002.png b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00002.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00002.png
rename to tests/snapshots/nanos/test_maticx_request_maticx_swap/00002.png
diff --git a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00003.png b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00003.png
rename to tests/snapshots/nanos/test_maticx_request_maticx_swap/00003.png
diff --git a/tests/snapshots/nanos/test_maticx_request_maticx_swap/00004.png b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00004.png
new file mode 100644
index 0000000..5ff6e1c
Binary files /dev/null and b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00004.png differ
diff --git a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00005.png b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00005.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00005.png
rename to tests/snapshots/nanos/test_maticx_request_maticx_swap/00005.png
diff --git a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00006.png b/tests/snapshots/nanos/test_maticx_request_maticx_swap/00006.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00006.png
rename to tests/snapshots/nanos/test_maticx_request_maticx_swap/00006.png
diff --git a/tests/snapshots/ethereum_kelp_nanos_deposit_lst/00000.png b/tests/snapshots/nanos/test_maticx_request_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanos_deposit_lst/00000.png
rename to tests/snapshots/nanos/test_maticx_request_withdraw/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00001.png b/tests/snapshots/nanos/test_maticx_request_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00001.png
rename to tests/snapshots/nanos/test_maticx_request_withdraw/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00002.png b/tests/snapshots/nanos/test_maticx_request_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_unstake_maticx/00002.png
rename to tests/snapshots/nanos/test_maticx_request_withdraw/00002.png
diff --git a/tests/snapshots/nanos/test_maticx_request_withdraw/00003.png b/tests/snapshots/nanos/test_maticx_request_withdraw/00003.png
new file mode 100644
index 0000000..1492e09
Binary files /dev/null and b/tests/snapshots/nanos/test_maticx_request_withdraw/00003.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00009.png b/tests/snapshots/nanos/test_maticx_request_withdraw/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00009.png
rename to tests/snapshots/nanos/test_maticx_request_withdraw/00004.png
diff --git a/tests/snapshots/ethereum_ethx_nanos_stake_eth/00010.png b/tests/snapshots/nanos/test_maticx_request_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanos_stake_eth/00010.png
rename to tests/snapshots/nanos/test_maticx_request_withdraw/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanos/00000.png b/tests/snapshots/nanos/test_maticx_submit/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanos/00000.png
rename to tests/snapshots/nanos/test_maticx_submit/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00001.png b/tests/snapshots/nanos/test_maticx_submit/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_stake_matic/00001.png
rename to tests/snapshots/nanos/test_maticx_submit/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanos_stake_matic/00002.png b/tests/snapshots/nanos/test_maticx_submit/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanos_stake_matic/00002.png
rename to tests/snapshots/nanos/test_maticx_submit/00002.png
diff --git a/tests/snapshots/nanos/test_maticx_submit/00003.png b/tests/snapshots/nanos/test_maticx_submit/00003.png
new file mode 100644
index 0000000..1492e09
Binary files /dev/null and b/tests/snapshots/nanos/test_maticx_submit/00003.png differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00006.png b/tests/snapshots/nanos/test_maticx_submit/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanos/00006.png
rename to tests/snapshots/nanos/test_maticx_submit/00004.png
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanos/00007.png b/tests/snapshots/nanos/test_maticx_submit/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanos/00007.png
rename to tests/snapshots/nanos/test_maticx_submit/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanos/00000.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanos/00000.png
rename to tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00001.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00001.png
rename to tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
diff --git a/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png
new file mode 100644
index 0000000..d455dbc
Binary files /dev/null and b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png differ
diff --git a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00003.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00003.png
rename to tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
diff --git a/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png
new file mode 100644
index 0000000..5ff6e1c
Binary files /dev/null and b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png differ
diff --git a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00005.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00005.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00005.png
rename to tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00005.png
diff --git a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00006.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00006.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00006.png
rename to tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00006.png
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00006.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00007.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanos/00006.png
rename to tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00007.png
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanos/00007.png b/tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00008.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanos/00007.png
rename to tests/snapshots/nanos/test_maticx_swap_matic_for_maticx_via_instantpool/00008.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00000.png b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00000.png
rename to tests/snapshots/nanosp/test_bnbx_claim_withdraw/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00001.png b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00001.png
rename to tests/snapshots/nanosp/test_bnbx_claim_withdraw/00001.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00002.png b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00002.png
rename to tests/snapshots/nanosp/test_bnbx_claim_withdraw/00002.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00003.png b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00003.png
rename to tests/snapshots/nanosp/test_bnbx_claim_withdraw/00003.png
diff --git a/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00004.png b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00004.png
new file mode 100644
index 0000000..8abe23a
Binary files /dev/null and b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00005.png b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00005.png
rename to tests/snapshots/nanosp/test_bnbx_claim_withdraw/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00006.png b/tests/snapshots/nanosp/test_bnbx_claim_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_claim_withdraw/00006.png
rename to tests/snapshots/nanosp/test_bnbx_claim_withdraw/00006.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_deposit/00000.png b/tests/snapshots/nanosp/test_bnbx_deposit/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_deposit/00000.png
rename to tests/snapshots/nanosp/test_bnbx_deposit/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_deposit/00001.png b/tests/snapshots/nanosp/test_bnbx_deposit/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_deposit/00001.png
rename to tests/snapshots/nanosp/test_bnbx_deposit/00001.png
diff --git a/tests/snapshots/nanosp/test_bnbx_deposit/00002.png b/tests/snapshots/nanosp/test_bnbx_deposit/00002.png
new file mode 100644
index 0000000..7f1f01f
Binary files /dev/null and b/tests/snapshots/nanosp/test_bnbx_deposit/00002.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_deposit/00003.png b/tests/snapshots/nanosp/test_bnbx_deposit/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_deposit/00003.png
rename to tests/snapshots/nanosp/test_bnbx_deposit/00003.png
diff --git a/tests/snapshots/nanosp/test_bnbx_deposit/00004.png b/tests/snapshots/nanosp/test_bnbx_deposit/00004.png
new file mode 100644
index 0000000..8abe23a
Binary files /dev/null and b/tests/snapshots/nanosp/test_bnbx_deposit/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_deposit/00005.png b/tests/snapshots/nanosp/test_bnbx_deposit/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_deposit/00005.png
rename to tests/snapshots/nanosp/test_bnbx_deposit/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_deposit/00006.png b/tests/snapshots/nanosp/test_bnbx_deposit/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_deposit/00006.png
rename to tests/snapshots/nanosp/test_bnbx_deposit/00006.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00000.png b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00000.png
rename to tests/snapshots/nanosp/test_bnbx_request_withdraw/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00001.png b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00001.png
rename to tests/snapshots/nanosp/test_bnbx_request_withdraw/00001.png
diff --git a/tests/snapshots/nanosp/test_bnbx_request_withdraw/00002.png b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00002.png
new file mode 100644
index 0000000..57e2c64
Binary files /dev/null and b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00002.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00003.png b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00003.png
rename to tests/snapshots/nanosp/test_bnbx_request_withdraw/00003.png
diff --git a/tests/snapshots/nanosp/test_bnbx_request_withdraw/00004.png b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00004.png
new file mode 100644
index 0000000..8abe23a
Binary files /dev/null and b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00005.png b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00005.png
rename to tests/snapshots/nanosp/test_bnbx_request_withdraw/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00006.png b/tests/snapshots/nanosp/test_bnbx_request_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanosp_request_withdraw/00006.png
rename to tests/snapshots/nanosp/test_bnbx_request_withdraw/00006.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00000.png b/tests/snapshots/nanosp/test_ethx_claim/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00000.png
rename to tests/snapshots/nanosp/test_ethx_claim/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00001.png b/tests/snapshots/nanosp/test_ethx_claim/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00001.png
rename to tests/snapshots/nanosp/test_ethx_claim/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00002.png b/tests/snapshots/nanosp/test_ethx_claim/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_claim_eth/00002.png
rename to tests/snapshots/nanosp/test_ethx_claim/00002.png
diff --git a/tests/snapshots/nanosp/test_ethx_claim/00003.png b/tests/snapshots/nanosp/test_ethx_claim/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanosp/test_ethx_claim/00003.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00004.png b/tests/snapshots/nanosp/test_ethx_claim/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_claim_eth/00004.png
rename to tests/snapshots/nanosp/test_ethx_claim/00004.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00005.png b/tests/snapshots/nanosp/test_ethx_claim/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_claim_eth/00005.png
rename to tests/snapshots/nanosp/test_ethx_claim/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_deposit/00000.png b/tests/snapshots/nanosp/test_ethx_deposit/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_deposit/00000.png
rename to tests/snapshots/nanosp/test_ethx_deposit/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_deposit/00001.png b/tests/snapshots/nanosp/test_ethx_deposit/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_deposit/00001.png
rename to tests/snapshots/nanosp/test_ethx_deposit/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00002.png b/tests/snapshots/nanosp/test_ethx_deposit/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_stake_eth/00002.png
rename to tests/snapshots/nanosp/test_ethx_deposit/00002.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00003.png b/tests/snapshots/nanosp/test_ethx_deposit/00003.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00003.png
rename to tests/snapshots/nanosp/test_ethx_deposit/00003.png
diff --git a/tests/snapshots/nanosp/test_ethx_deposit/00004.png b/tests/snapshots/nanosp/test_ethx_deposit/00004.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanosp/test_ethx_deposit/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00005.png b/tests/snapshots/nanosp/test_ethx_deposit/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00005.png
rename to tests/snapshots/nanosp/test_ethx_deposit/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00006.png b/tests/snapshots/nanosp/test_ethx_deposit/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00006.png
rename to tests/snapshots/nanosp/test_ethx_deposit/00006.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00000.png b/tests/snapshots/nanosp/test_ethx_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_request_withdraw/00000.png
rename to tests/snapshots/nanosp/test_ethx_withdraw/00000.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00001.png b/tests/snapshots/nanosp/test_ethx_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_request_withdraw/00001.png
rename to tests/snapshots/nanosp/test_ethx_withdraw/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00002.png b/tests/snapshots/nanosp/test_ethx_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00002.png
rename to tests/snapshots/nanosp/test_ethx_withdraw/00002.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00003.png b/tests/snapshots/nanosp/test_ethx_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_stake_eth/00003.png
rename to tests/snapshots/nanosp/test_ethx_withdraw/00003.png
diff --git a/tests/snapshots/nanosp/test_ethx_withdraw/00004.png b/tests/snapshots/nanosp/test_ethx_withdraw/00004.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanosp/test_ethx_withdraw/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_deposit/00005.png b/tests/snapshots/nanosp/test_ethx_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_deposit/00005.png
rename to tests/snapshots/nanosp/test_ethx_withdraw/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_deposit/00006.png b/tests/snapshots/nanosp/test_ethx_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_deposit/00006.png
rename to tests/snapshots/nanosp/test_ethx_withdraw/00006.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00000.png b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_claim_eth/00000.png
rename to tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_claim_eth/00001.png b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_claim_eth/00001.png
rename to tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00002.png b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanosp_claim_matic/00002.png
rename to tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00002.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00003.png b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00003.png
rename to tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00003.png
diff --git a/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00004.png b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00004.png
new file mode 100644
index 0000000..5fc6941
Binary files /dev/null and b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00004.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00005.png b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00005.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_request_withdraw/00005.png
rename to tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00005.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00006.png b/tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00006.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_request_withdraw/00006.png
rename to tests/snapshots/nanosp/test_maticx_claim_maticx_swap/00006.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00000.png b/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00000.png
rename to tests/snapshots/nanosp/test_maticx_claim_withdrawal/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_claim_eth/00001.png b/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_claim_eth/00001.png
rename to tests/snapshots/nanosp/test_maticx_claim_withdrawal/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00002.png b/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanox_claim_matic/00002.png
rename to tests/snapshots/nanosp/test_maticx_claim_withdrawal/00002.png
diff --git a/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00003.png b/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00003.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanox_claim_eth/00004.png b/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_claim_eth/00004.png
rename to tests/snapshots/nanosp/test_maticx_claim_withdrawal/00004.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_claim_eth/00005.png b/tests/snapshots/nanosp/test_maticx_claim_withdrawal/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_claim_eth/00005.png
rename to tests/snapshots/nanosp/test_maticx_claim_withdrawal/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00000.png b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_stake_eth/00000.png
rename to tests/snapshots/nanosp/test_maticx_request_maticx_swap/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00001.png b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00001.png
rename to tests/snapshots/nanosp/test_maticx_request_maticx_swap/00001.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00002.png b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00002.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00002.png
rename to tests/snapshots/nanosp/test_maticx_request_maticx_swap/00002.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00003.png b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00003.png
rename to tests/snapshots/nanosp/test_maticx_request_maticx_swap/00003.png
diff --git a/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00004.png b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00004.png
new file mode 100644
index 0000000..5fc6941
Binary files /dev/null and b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00004.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00005.png b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00005.png
rename to tests/snapshots/nanosp/test_maticx_request_maticx_swap/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00006.png b/tests/snapshots/nanosp/test_maticx_request_maticx_swap/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_request_withdraw_eth/00006.png
rename to tests/snapshots/nanosp/test_maticx_request_maticx_swap/00006.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_claim_eth/00000.png b/tests/snapshots/nanosp/test_maticx_request_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_claim_eth/00000.png
rename to tests/snapshots/nanosp/test_maticx_request_withdraw/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00001.png b/tests/snapshots/nanosp/test_maticx_request_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00001.png
rename to tests/snapshots/nanosp/test_maticx_request_withdraw/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00002.png b/tests/snapshots/nanosp/test_maticx_request_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00002.png
rename to tests/snapshots/nanosp/test_maticx_request_withdraw/00002.png
diff --git a/tests/snapshots/nanosp/test_maticx_request_withdraw/00003.png b/tests/snapshots/nanosp/test_maticx_request_withdraw/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanosp/test_maticx_request_withdraw/00003.png differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00004.png b/tests/snapshots/nanosp/test_maticx_request_withdraw/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanosp/00004.png
rename to tests/snapshots/nanosp/test_maticx_request_withdraw/00004.png
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00005.png b/tests/snapshots/nanosp/test_maticx_request_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanosp/00005.png
rename to tests/snapshots/nanosp/test_maticx_request_withdraw/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00000.png b/tests/snapshots/nanosp/test_maticx_submit/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00000.png
rename to tests/snapshots/nanosp/test_maticx_submit/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00001.png b/tests/snapshots/nanosp/test_maticx_submit/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_stake_eth/00001.png
rename to tests/snapshots/nanosp/test_maticx_submit/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00002.png b/tests/snapshots/nanosp/test_maticx_submit/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanosp_stake_matic/00002.png
rename to tests/snapshots/nanosp/test_maticx_submit/00002.png
diff --git a/tests/snapshots/nanosp/test_maticx_submit/00003.png b/tests/snapshots/nanosp/test_maticx_submit/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanosp/test_maticx_submit/00003.png differ
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00004.png b/tests/snapshots/nanosp/test_maticx_submit/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanox/00004.png
rename to tests/snapshots/nanosp/test_maticx_submit/00004.png
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00005.png b/tests/snapshots/nanosp/test_maticx_submit/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanox/00005.png
rename to tests/snapshots/nanosp/test_maticx_submit/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00000.png b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_stake_eth/00000.png
rename to tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00001.png b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_stake_eth/00001.png
rename to tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
diff --git a/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png
new file mode 100644
index 0000000..3fc5905
Binary files /dev/null and b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00003.png b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00003.png
rename to tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
diff --git a/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png
new file mode 100644
index 0000000..5fc6941
Binary files /dev/null and b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00005.png b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_stake_eth/00005.png
rename to tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanosp_stake_eth/00006.png b/tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanosp_stake_eth/00006.png
rename to tests/snapshots/nanosp/test_maticx_swap_matic_for_maticx_via_instantpool/00006.png
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanosp/00000.png b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanosp/00000.png
rename to tests/snapshots/nanox/test_bnbx_claim_withdraw/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanosp_claim_matic/00001.png b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanosp_claim_matic/00001.png
rename to tests/snapshots/nanox/test_bnbx_claim_withdraw/00001.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00002.png b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00002.png
rename to tests/snapshots/nanox/test_bnbx_claim_withdraw/00002.png
diff --git a/tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00003.png b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_claim_withdraw/00003.png
rename to tests/snapshots/nanox/test_bnbx_claim_withdraw/00003.png
diff --git a/tests/snapshots/nanox/test_bnbx_claim_withdraw/00004.png b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00004.png
new file mode 100644
index 0000000..8abe23a
Binary files /dev/null and b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00004.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00005.png b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00005.png
rename to tests/snapshots/nanox/test_bnbx_claim_withdraw/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00006.png b/tests/snapshots/nanox/test_bnbx_claim_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00006.png
rename to tests/snapshots/nanox/test_bnbx_claim_withdraw/00006.png
diff --git a/tests/snapshots/ethereum_kelp_claim_eth_nanox/00000.png b/tests/snapshots/nanox/test_bnbx_deposit/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_eth_nanox/00000.png
rename to tests/snapshots/nanox/test_bnbx_deposit/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanosp_stake_matic/00001.png b/tests/snapshots/nanox/test_bnbx_deposit/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanosp_stake_matic/00001.png
rename to tests/snapshots/nanox/test_bnbx_deposit/00001.png
diff --git a/tests/snapshots/nanox/test_bnbx_deposit/00002.png b/tests/snapshots/nanox/test_bnbx_deposit/00002.png
new file mode 100644
index 0000000..7f1f01f
Binary files /dev/null and b/tests/snapshots/nanox/test_bnbx_deposit/00002.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_deposit/00003.png b/tests/snapshots/nanox/test_bnbx_deposit/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_deposit/00003.png
rename to tests/snapshots/nanox/test_bnbx_deposit/00003.png
diff --git a/tests/snapshots/nanox/test_bnbx_deposit/00004.png b/tests/snapshots/nanox/test_bnbx_deposit/00004.png
new file mode 100644
index 0000000..8abe23a
Binary files /dev/null and b/tests/snapshots/nanox/test_bnbx_deposit/00004.png differ
diff --git a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00005.png b/tests/snapshots/nanox/test_bnbx_deposit/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_stake_eth/00005.png
rename to tests/snapshots/nanox/test_bnbx_deposit/00005.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00006.png b/tests/snapshots/nanox/test_bnbx_deposit/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_stake_eth/00006.png
rename to tests/snapshots/nanox/test_bnbx_deposit/00006.png
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00000.png b/tests/snapshots/nanox/test_bnbx_request_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanosp/00000.png
rename to tests/snapshots/nanox/test_bnbx_request_withdraw/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00001.png b/tests/snapshots/nanox/test_bnbx_request_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanosp_unstake_maticx/00001.png
rename to tests/snapshots/nanox/test_bnbx_request_withdraw/00001.png
diff --git a/tests/snapshots/nanox/test_bnbx_request_withdraw/00002.png b/tests/snapshots/nanox/test_bnbx_request_withdraw/00002.png
new file mode 100644
index 0000000..57e2c64
Binary files /dev/null and b/tests/snapshots/nanox/test_bnbx_request_withdraw/00002.png differ
diff --git a/tests/snapshots/bsc_bnbx_nanox_request_withdraw/00003.png b/tests/snapshots/nanox/test_bnbx_request_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/bsc_bnbx_nanox_request_withdraw/00003.png
rename to tests/snapshots/nanox/test_bnbx_request_withdraw/00003.png
diff --git a/tests/snapshots/nanox/test_bnbx_request_withdraw/00004.png b/tests/snapshots/nanox/test_bnbx_request_withdraw/00004.png
new file mode 100644
index 0000000..8abe23a
Binary files /dev/null and b/tests/snapshots/nanox/test_bnbx_request_withdraw/00004.png differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00005.png b/tests/snapshots/nanox/test_bnbx_request_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00005.png
rename to tests/snapshots/nanox/test_bnbx_request_withdraw/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00006.png b/tests/snapshots/nanox/test_bnbx_request_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00006.png
rename to tests/snapshots/nanox/test_bnbx_request_withdraw/00006.png
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00000.png b/tests/snapshots/nanox/test_ethx_claim/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanox/00000.png
rename to tests/snapshots/nanox/test_ethx_claim/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanox_claim_matic/00001.png b/tests/snapshots/nanox/test_ethx_claim/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanox_claim_matic/00001.png
rename to tests/snapshots/nanox/test_ethx_claim/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_claim_eth/00002.png b/tests/snapshots/nanox/test_ethx_claim/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_claim_eth/00002.png
rename to tests/snapshots/nanox/test_ethx_claim/00002.png
diff --git a/tests/snapshots/nanox/test_ethx_claim/00003.png b/tests/snapshots/nanox/test_ethx_claim/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanox/test_ethx_claim/00003.png differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00004.png b/tests/snapshots/nanox/test_ethx_claim/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanosp/00004.png
rename to tests/snapshots/nanox/test_ethx_claim/00004.png
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanosp/00005.png b/tests/snapshots/nanox/test_ethx_claim/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanosp/00005.png
rename to tests/snapshots/nanox/test_ethx_claim/00005.png
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00000.png b/tests/snapshots/nanox/test_ethx_deposit/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00000.png
rename to tests/snapshots/nanox/test_ethx_deposit/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00001.png b/tests/snapshots/nanox/test_ethx_deposit/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanox_stake_matic/00001.png
rename to tests/snapshots/nanox/test_ethx_deposit/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00002.png b/tests/snapshots/nanox/test_ethx_deposit/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_stake_eth/00002.png
rename to tests/snapshots/nanox/test_ethx_deposit/00002.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00003.png b/tests/snapshots/nanox/test_ethx_deposit/00003.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00003.png
rename to tests/snapshots/nanox/test_ethx_deposit/00003.png
diff --git a/tests/snapshots/nanox/test_ethx_deposit/00004.png b/tests/snapshots/nanox/test_ethx_deposit/00004.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanox/test_ethx_deposit/00004.png differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00005.png b/tests/snapshots/nanox/test_ethx_deposit/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanox/00005.png
rename to tests/snapshots/nanox/test_ethx_deposit/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00006.png b/tests/snapshots/nanox/test_ethx_deposit/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanox/00006.png
rename to tests/snapshots/nanox/test_ethx_deposit/00006.png
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00000.png b/tests/snapshots/nanox/test_ethx_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00000.png
rename to tests/snapshots/nanox/test_ethx_withdraw/00000.png
diff --git a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00001.png b/tests/snapshots/nanox/test_ethx_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00001.png
rename to tests/snapshots/nanox/test_ethx_withdraw/00001.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00002.png b/tests/snapshots/nanox/test_ethx_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_request_withdraw_eth/00002.png
rename to tests/snapshots/nanox/test_ethx_withdraw/00002.png
diff --git a/tests/snapshots/ethereum_ethx_nanox_stake_eth/00003.png b/tests/snapshots/nanox/test_ethx_withdraw/00003.png
similarity index 100%
rename from tests/snapshots/ethereum_ethx_nanox_stake_eth/00003.png
rename to tests/snapshots/nanox/test_ethx_withdraw/00003.png
diff --git a/tests/snapshots/nanox/test_ethx_withdraw/00004.png b/tests/snapshots/nanox/test_ethx_withdraw/00004.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanox/test_ethx_withdraw/00004.png differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00005.png b/tests/snapshots/nanox/test_ethx_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00005.png
rename to tests/snapshots/nanox/test_ethx_withdraw/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00006.png b/tests/snapshots/nanox/test_ethx_withdraw/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00006.png
rename to tests/snapshots/nanox/test_ethx_withdraw/00006.png
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_eth/00000.png b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanox_deposit_eth/00000.png
rename to tests/snapshots/nanox/test_maticx_claim_maticx_swap/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00001.png b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00001.png
rename to tests/snapshots/nanox/test_maticx_claim_maticx_swap/00001.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00002.png b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00002.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00002.png
rename to tests/snapshots/nanox/test_maticx_claim_maticx_swap/00002.png
diff --git a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00003.png b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00003.png
rename to tests/snapshots/nanox/test_maticx_claim_maticx_swap/00003.png
diff --git a/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00004.png b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00004.png
new file mode 100644
index 0000000..5fc6941
Binary files /dev/null and b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00004.png differ
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00005.png b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanox/00005.png
rename to tests/snapshots/nanox/test_maticx_claim_maticx_swap/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00006.png b/tests/snapshots/nanox/test_maticx_claim_maticx_swap/00006.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanox/00006.png
rename to tests/snapshots/nanox/test_maticx_claim_maticx_swap/00006.png
diff --git a/tests/snapshots/ethereum_kelp_nanox_deposit_lst/00000.png b/tests/snapshots/nanox/test_maticx_claim_withdrawal/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanox_deposit_lst/00000.png
rename to tests/snapshots/nanox/test_maticx_claim_withdrawal/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00001.png b/tests/snapshots/nanox/test_maticx_claim_withdrawal/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00001.png
rename to tests/snapshots/nanox/test_maticx_claim_withdrawal/00001.png
diff --git a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00002.png b/tests/snapshots/nanox/test_maticx_claim_withdrawal/00002.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00002.png
rename to tests/snapshots/nanox/test_maticx_claim_withdrawal/00002.png
diff --git a/tests/snapshots/nanox/test_maticx_claim_withdrawal/00003.png b/tests/snapshots/nanox/test_maticx_claim_withdrawal/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanox/test_maticx_claim_withdrawal/00003.png differ
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00004.png b/tests/snapshots/nanox/test_maticx_claim_withdrawal/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanox/00004.png
rename to tests/snapshots/nanox/test_maticx_claim_withdrawal/00004.png
diff --git a/tests/snapshots/ethereum_kelp_claim_lst_nanox/00005.png b/tests/snapshots/nanox/test_maticx_claim_withdrawal/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_claim_lst_nanox/00005.png
rename to tests/snapshots/nanox/test_maticx_claim_withdrawal/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00000.png b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanosp/00000.png
rename to tests/snapshots/nanox/test_maticx_request_maticx_swap/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00001.png b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00001.png
rename to tests/snapshots/nanox/test_maticx_request_maticx_swap/00001.png
diff --git a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00002.png b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00002.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00002.png
rename to tests/snapshots/nanox/test_maticx_request_maticx_swap/00002.png
diff --git a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00003.png b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00003.png
rename to tests/snapshots/nanox/test_maticx_request_maticx_swap/00003.png
diff --git a/tests/snapshots/nanox/test_maticx_request_maticx_swap/00004.png b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00004.png
new file mode 100644
index 0000000..5fc6941
Binary files /dev/null and b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00004.png differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00005.png b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00005.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00005.png
rename to tests/snapshots/nanox/test_maticx_request_maticx_swap/00005.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00006.png b/tests/snapshots/nanox/test_maticx_request_maticx_swap/00006.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00006.png
rename to tests/snapshots/nanox/test_maticx_request_maticx_swap/00006.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_eth_nanox/00000.png b/tests/snapshots/nanox/test_maticx_request_withdraw/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_eth_nanox/00000.png
rename to tests/snapshots/nanox/test_maticx_request_withdraw/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00001.png b/tests/snapshots/nanox/test_maticx_request_withdraw/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00001.png
rename to tests/snapshots/nanox/test_maticx_request_withdraw/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00002.png b/tests/snapshots/nanox/test_maticx_request_withdraw/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanox_unstake_maticx/00002.png
rename to tests/snapshots/nanox/test_maticx_request_withdraw/00002.png
diff --git a/tests/snapshots/nanox/test_maticx_request_withdraw/00003.png b/tests/snapshots/nanox/test_maticx_request_withdraw/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanox/test_maticx_request_withdraw/00003.png differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00004.png b/tests/snapshots/nanox/test_maticx_request_withdraw/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00004.png
rename to tests/snapshots/nanox/test_maticx_request_withdraw/00004.png
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00005.png b/tests/snapshots/nanox/test_maticx_request_withdraw/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanosp_deposit_eth/00005.png
rename to tests/snapshots/nanox/test_maticx_request_withdraw/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00000.png b/tests/snapshots/nanox/test_maticx_submit/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanosp/00000.png
rename to tests/snapshots/nanox/test_maticx_submit/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00001.png b/tests/snapshots/nanox/test_maticx_submit/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00001.png
rename to tests/snapshots/nanox/test_maticx_submit/00001.png
diff --git a/tests/snapshots/ethereum_maticx_nanox_stake_matic/00002.png b/tests/snapshots/nanox/test_maticx_submit/00002.png
similarity index 100%
rename from tests/snapshots/ethereum_maticx_nanox_stake_matic/00002.png
rename to tests/snapshots/nanox/test_maticx_submit/00002.png
diff --git a/tests/snapshots/nanox/test_maticx_submit/00003.png b/tests/snapshots/nanox/test_maticx_submit/00003.png
new file mode 100644
index 0000000..9cdfdf9
Binary files /dev/null and b/tests/snapshots/nanox/test_maticx_submit/00003.png differ
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00004.png b/tests/snapshots/nanox/test_maticx_submit/00004.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00004.png
rename to tests/snapshots/nanox/test_maticx_submit/00004.png
diff --git a/tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00005.png b/tests/snapshots/nanox/test_maticx_submit/00005.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_nanosp_deposit_lst/00005.png
rename to tests/snapshots/nanox/test_maticx_submit/00005.png
diff --git a/tests/snapshots/ethereum_kelp_unstake_lst_nanox/00000.png b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
similarity index 100%
rename from tests/snapshots/ethereum_kelp_unstake_lst_nanox/00000.png
rename to tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
diff --git a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00001.png b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00001.png
rename to tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
diff --git a/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png
new file mode 100644
index 0000000..3fc5905
Binary files /dev/null and b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png differ
diff --git a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00003.png b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00003.png
rename to tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
diff --git a/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png
new file mode 100644
index 0000000..5fc6941
Binary files /dev/null and b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00005.png b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00005.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00005.png
rename to tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00005.png
diff --git a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00006.png b/tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00006.png
similarity index 100%
rename from tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00006.png
rename to tests/snapshots/nanox/test_maticx_swap_matic_for_maticx_via_instantpool/00006.png
diff --git a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00000.png b/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00000.png
deleted file mode 100644
index 8d84cc7..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00004.png b/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00004.png
deleted file mode 100644
index dcb3714..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_claim_maticx_swap/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00000.png b/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00000.png
deleted file mode 100644
index 8d84cc7..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00004.png b/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00004.png
deleted file mode 100644
index dcb3714..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_request_maticx_swap/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00000.png b/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00000.png
deleted file mode 100644
index 8d84cc7..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00002.png b/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00002.png
deleted file mode 100644
index 7b31f8a..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00002.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00004.png b/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00004.png
deleted file mode 100644
index dcb3714..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00005.png b/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00005.png
deleted file mode 100644
index 1c9156c..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00005.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00006.png b/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00006.png
deleted file mode 100644
index ce795f3..0000000
Binary files a/tests/snapshots/polygon_maticx_nanos_swap_matic_via_ipool/00006.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00000.png b/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00004.png b/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00004.png
deleted file mode 100644
index 8677395..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_claim_maticx_swap/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00000.png b/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00004.png b/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00004.png
deleted file mode 100644
index 8677395..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_request_maticx_swap/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00000.png b/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00002.png b/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00002.png
deleted file mode 100644
index 974000a..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00002.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00004.png b/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00004.png
deleted file mode 100644
index 8677395..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00005.png b/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00005.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00005.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00006.png b/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00006.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/polygon_maticx_nanosp_swap_matic_via_ipool/00006.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00000.png b/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00004.png b/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00004.png
deleted file mode 100644
index 8677395..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00005.png b/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00005.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00005.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00006.png b/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00006.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_claim_maticx_swap/00006.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00000.png b/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00004.png b/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00004.png
deleted file mode 100644
index 8677395..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00005.png b/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00005.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00005.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00006.png b/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00006.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_request_maticx_swap/00006.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00000.png b/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00000.png
deleted file mode 100644
index 487ea10..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00000.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00002.png b/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00002.png
deleted file mode 100644
index 974000a..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00002.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00004.png b/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00004.png
deleted file mode 100644
index 8677395..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00004.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00005.png b/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00005.png
deleted file mode 100644
index 570ce28..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00005.png and /dev/null differ
diff --git a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00006.png b/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00006.png
deleted file mode 100644
index 6578872..0000000
Binary files a/tests/snapshots/polygon_maticx_nanox_swap_matic_via_ipool/00006.png and /dev/null differ
diff --git a/tests/snapshots/stax/test_bnbx_claim_withdraw/00000.png b/tests/snapshots/stax/test_bnbx_claim_withdraw/00000.png
new file mode 100644
index 0000000..f41dab8
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_claim_withdraw/00000.png differ
diff --git a/tests/snapshots/stax/test_bnbx_claim_withdraw/00001.png b/tests/snapshots/stax/test_bnbx_claim_withdraw/00001.png
new file mode 100644
index 0000000..4ea173a
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_claim_withdraw/00001.png differ
diff --git a/tests/snapshots/stax/test_bnbx_claim_withdraw/00002.png b/tests/snapshots/stax/test_bnbx_claim_withdraw/00002.png
new file mode 100644
index 0000000..4803309
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_claim_withdraw/00002.png differ
diff --git a/tests/snapshots/stax/test_bnbx_claim_withdraw/00003.png b/tests/snapshots/stax/test_bnbx_claim_withdraw/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_claim_withdraw/00003.png differ
diff --git a/tests/snapshots/stax/test_bnbx_claim_withdraw/00004.png b/tests/snapshots/stax/test_bnbx_claim_withdraw/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_claim_withdraw/00004.png differ
diff --git a/tests/snapshots/stax/test_bnbx_deposit/00000.png b/tests/snapshots/stax/test_bnbx_deposit/00000.png
new file mode 100644
index 0000000..34f7981
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_deposit/00000.png differ
diff --git a/tests/snapshots/stax/test_bnbx_deposit/00001.png b/tests/snapshots/stax/test_bnbx_deposit/00001.png
new file mode 100644
index 0000000..919da8d
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_deposit/00001.png differ
diff --git a/tests/snapshots/stax/test_bnbx_deposit/00002.png b/tests/snapshots/stax/test_bnbx_deposit/00002.png
new file mode 100644
index 0000000..29f026a
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_deposit/00002.png differ
diff --git a/tests/snapshots/stax/test_bnbx_deposit/00003.png b/tests/snapshots/stax/test_bnbx_deposit/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_deposit/00003.png differ
diff --git a/tests/snapshots/stax/test_bnbx_deposit/00004.png b/tests/snapshots/stax/test_bnbx_deposit/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_deposit/00004.png differ
diff --git a/tests/snapshots/stax/test_bnbx_request_withdraw/00000.png b/tests/snapshots/stax/test_bnbx_request_withdraw/00000.png
new file mode 100644
index 0000000..005c36b
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_request_withdraw/00000.png differ
diff --git a/tests/snapshots/stax/test_bnbx_request_withdraw/00001.png b/tests/snapshots/stax/test_bnbx_request_withdraw/00001.png
new file mode 100644
index 0000000..bcfa2b7
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_request_withdraw/00001.png differ
diff --git a/tests/snapshots/stax/test_bnbx_request_withdraw/00002.png b/tests/snapshots/stax/test_bnbx_request_withdraw/00002.png
new file mode 100644
index 0000000..9337663
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_request_withdraw/00002.png differ
diff --git a/tests/snapshots/stax/test_bnbx_request_withdraw/00003.png b/tests/snapshots/stax/test_bnbx_request_withdraw/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_request_withdraw/00003.png differ
diff --git a/tests/snapshots/stax/test_bnbx_request_withdraw/00004.png b/tests/snapshots/stax/test_bnbx_request_withdraw/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_bnbx_request_withdraw/00004.png differ
diff --git a/tests/snapshots/stax/test_ethx_claim/00000.png b/tests/snapshots/stax/test_ethx_claim/00000.png
new file mode 100644
index 0000000..f41dab8
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_claim/00000.png differ
diff --git a/tests/snapshots/stax/test_ethx_claim/00001.png b/tests/snapshots/stax/test_ethx_claim/00001.png
new file mode 100644
index 0000000..572167a
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_claim/00001.png differ
diff --git a/tests/snapshots/stax/test_ethx_claim/00002.png b/tests/snapshots/stax/test_ethx_claim/00002.png
new file mode 100644
index 0000000..4803309
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_claim/00002.png differ
diff --git a/tests/snapshots/stax/test_ethx_claim/00003.png b/tests/snapshots/stax/test_ethx_claim/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_claim/00003.png differ
diff --git a/tests/snapshots/stax/test_ethx_claim/00004.png b/tests/snapshots/stax/test_ethx_claim/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_claim/00004.png differ
diff --git a/tests/snapshots/stax/test_ethx_deposit/00000.png b/tests/snapshots/stax/test_ethx_deposit/00000.png
new file mode 100644
index 0000000..34f7981
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_deposit/00000.png differ
diff --git a/tests/snapshots/stax/test_ethx_deposit/00001.png b/tests/snapshots/stax/test_ethx_deposit/00001.png
new file mode 100644
index 0000000..2728f9c
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_deposit/00001.png differ
diff --git a/tests/snapshots/stax/test_ethx_deposit/00002.png b/tests/snapshots/stax/test_ethx_deposit/00002.png
new file mode 100644
index 0000000..29f026a
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_deposit/00002.png differ
diff --git a/tests/snapshots/stax/test_ethx_deposit/00003.png b/tests/snapshots/stax/test_ethx_deposit/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_deposit/00003.png differ
diff --git a/tests/snapshots/stax/test_ethx_deposit/00004.png b/tests/snapshots/stax/test_ethx_deposit/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_deposit/00004.png differ
diff --git a/tests/snapshots/stax/test_ethx_withdraw/00000.png b/tests/snapshots/stax/test_ethx_withdraw/00000.png
new file mode 100644
index 0000000..005c36b
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_withdraw/00000.png differ
diff --git a/tests/snapshots/stax/test_ethx_withdraw/00001.png b/tests/snapshots/stax/test_ethx_withdraw/00001.png
new file mode 100644
index 0000000..142602b
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_withdraw/00001.png differ
diff --git a/tests/snapshots/stax/test_ethx_withdraw/00002.png b/tests/snapshots/stax/test_ethx_withdraw/00002.png
new file mode 100644
index 0000000..9337663
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_withdraw/00002.png differ
diff --git a/tests/snapshots/stax/test_ethx_withdraw/00003.png b/tests/snapshots/stax/test_ethx_withdraw/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_withdraw/00003.png differ
diff --git a/tests/snapshots/stax/test_ethx_withdraw/00004.png b/tests/snapshots/stax/test_ethx_withdraw/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_ethx_withdraw/00004.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_maticx_swap/00000.png b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00000.png
new file mode 100644
index 0000000..f41dab8
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00000.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_maticx_swap/00001.png b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00001.png
new file mode 100644
index 0000000..cfec239
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00001.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_maticx_swap/00002.png b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00002.png
new file mode 100644
index 0000000..4803309
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00002.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_maticx_swap/00003.png b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00003.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_maticx_swap/00004.png b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_maticx_swap/00004.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_withdrawal/00000.png b/tests/snapshots/stax/test_maticx_claim_withdrawal/00000.png
new file mode 100644
index 0000000..f41dab8
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_withdrawal/00000.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_withdrawal/00001.png b/tests/snapshots/stax/test_maticx_claim_withdrawal/00001.png
new file mode 100644
index 0000000..07f70d0
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_withdrawal/00001.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_withdrawal/00002.png b/tests/snapshots/stax/test_maticx_claim_withdrawal/00002.png
new file mode 100644
index 0000000..4803309
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_withdrawal/00002.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_withdrawal/00003.png b/tests/snapshots/stax/test_maticx_claim_withdrawal/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_withdrawal/00003.png differ
diff --git a/tests/snapshots/stax/test_maticx_claim_withdrawal/00004.png b/tests/snapshots/stax/test_maticx_claim_withdrawal/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_claim_withdrawal/00004.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_maticx_swap/00000.png b/tests/snapshots/stax/test_maticx_request_maticx_swap/00000.png
new file mode 100644
index 0000000..005c36b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_maticx_swap/00000.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_maticx_swap/00001.png b/tests/snapshots/stax/test_maticx_request_maticx_swap/00001.png
new file mode 100644
index 0000000..14921a8
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_maticx_swap/00001.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_maticx_swap/00002.png b/tests/snapshots/stax/test_maticx_request_maticx_swap/00002.png
new file mode 100644
index 0000000..9337663
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_maticx_swap/00002.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_maticx_swap/00003.png b/tests/snapshots/stax/test_maticx_request_maticx_swap/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_maticx_swap/00003.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_maticx_swap/00004.png b/tests/snapshots/stax/test_maticx_request_maticx_swap/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_maticx_swap/00004.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_withdraw/00000.png b/tests/snapshots/stax/test_maticx_request_withdraw/00000.png
new file mode 100644
index 0000000..005c36b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_withdraw/00000.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_withdraw/00001.png b/tests/snapshots/stax/test_maticx_request_withdraw/00001.png
new file mode 100644
index 0000000..846dbe8
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_withdraw/00001.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_withdraw/00002.png b/tests/snapshots/stax/test_maticx_request_withdraw/00002.png
new file mode 100644
index 0000000..9337663
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_withdraw/00002.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_withdraw/00003.png b/tests/snapshots/stax/test_maticx_request_withdraw/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_withdraw/00003.png differ
diff --git a/tests/snapshots/stax/test_maticx_request_withdraw/00004.png b/tests/snapshots/stax/test_maticx_request_withdraw/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_request_withdraw/00004.png differ
diff --git a/tests/snapshots/stax/test_maticx_submit/00000.png b/tests/snapshots/stax/test_maticx_submit/00000.png
new file mode 100644
index 0000000..34f7981
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_submit/00000.png differ
diff --git a/tests/snapshots/stax/test_maticx_submit/00001.png b/tests/snapshots/stax/test_maticx_submit/00001.png
new file mode 100644
index 0000000..4fd1261
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_submit/00001.png differ
diff --git a/tests/snapshots/stax/test_maticx_submit/00002.png b/tests/snapshots/stax/test_maticx_submit/00002.png
new file mode 100644
index 0000000..29f026a
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_submit/00002.png differ
diff --git a/tests/snapshots/stax/test_maticx_submit/00003.png b/tests/snapshots/stax/test_maticx_submit/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_submit/00003.png differ
diff --git a/tests/snapshots/stax/test_maticx_submit/00004.png b/tests/snapshots/stax/test_maticx_submit/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_submit/00004.png differ
diff --git a/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png
new file mode 100644
index 0000000..34f7981
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00000.png differ
diff --git a/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png
new file mode 100644
index 0000000..650bee2
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00001.png differ
diff --git a/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png
new file mode 100644
index 0000000..29f026a
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00002.png differ
diff --git a/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png
new file mode 100644
index 0000000..392165d
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00003.png differ
diff --git a/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png
new file mode 100644
index 0000000..339db1b
Binary files /dev/null and b/tests/snapshots/stax/test_maticx_swap_matic_for_maticx_via_instantpool/00004.png differ
diff --git a/tests/src/bnbx/test_bnbx_claim_withdraw.py b/tests/src/bnbx/test_bnbx_claim_withdraw.py
new file mode 100644
index 0000000..3032b59
--- /dev/null
+++ b/tests/src/bnbx/test_bnbx_claim_withdraw.py
@@ -0,0 +1,23 @@
+from eth_typing import ChainId
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0x3b961e83400d51e6e1af5c450d3c7d7b80588d28"
+)
+
+# Test from replayed transaction: https://testnet.bscscan.com/tx/0x4933296ae725dbdd0e1a093fdf508f88ad22c9ae315282eccccda148405c9856
+
+def test_bnbx_claim_withdraw(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0xf84444360000000000000000000000000000000000000000000000000000000000000000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr,
+ ChainId.BNB,
+ )
+
diff --git a/tests/src/bnbx/test_bnbx_deposit.py b/tests/src/bnbx/test_bnbx_deposit.py
new file mode 100644
index 0000000..0c3ad65
--- /dev/null
+++ b/tests/src/bnbx/test_bnbx_deposit.py
@@ -0,0 +1,24 @@
+from eth_typing import ChainId
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0x3b961e83400d51e6e1af5c450d3c7d7b80588d28"
+)
+
+# Test from replayed transaction: https://bscscan.com/tx/0x9b712c0500b22839ce9f01952fc1d4237bf33277552ea5501f3dd8e3d419bd0f
+
+def test_bnbx_deposit(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0x9ddb511a0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004065313663623065316333353133303164333338656661343334656531646166336631393335386363633363666161643163386264323733663736633133313561"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr,
+ ChainId.BNB,
+ value=1.065
+ )
+
diff --git a/tests/src/bnbx/test_bnbx_request_withdraw.py b/tests/src/bnbx/test_bnbx_request_withdraw.py
new file mode 100644
index 0000000..0968915
--- /dev/null
+++ b/tests/src/bnbx/test_bnbx_request_withdraw.py
@@ -0,0 +1,23 @@
+from eth_typing import ChainId
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0x3b961e83400d51e6e1af5c450d3c7d7b80588d28"
+)
+
+# Test from replayed transaction: https://bscscan.com/tx/0x8b1657e6b4d1c508dac4d4cf882d63e0efce94dff586591ab10c8b46486bba85
+
+def test_bnbx_request_withdraw(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0x0d57afa6000000000000000000000000000000000000000000000000003e819ab3f22c000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000004065313663623065316333353133303164333338656661343334656531646166336631393335386363633363666161643163386264323733663736633133313561"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr,
+ ChainId.BNB,
+ )
+
diff --git a/tests/src/bsc/claim_withdraw.test.js b/tests/src/bsc/claim_withdraw.test.js
deleted file mode 100644
index f6365bd..0000000
--- a/tests/src/bsc/claim_withdraw.test.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
-} from "../test.fixture";
-
-const contractAddr = "0x7276241a669489e4bbb76f63d2a43bfe63080f2f";
-const pluginName = "staderlabs";
-const testNetwork = "bsc";
-const chainID = 56;
-const signedPlugin = false;
-// Test from replayed transaction: https://bscscan.com/tx/0xc4ee2488f8a2f06c7cb300477df51a5bbec1195fc12e6e20ca9c3cb18ffd5995
-const inputData =
- "0xb13acedd0000000000000000000000000000000000000000000000000000000000000000";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Claim Withdraw BNB",
- zemu(
- model,
- async (sim, eth) => {
- const serializedTx = serializeTx(contractAddr, inputData, chainID);
-
- const tx = eth.signTransaction("44'/60'/0'/0/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 5 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_bnbx_" + model.name + "_claim_withdraw",
- [right_clicks, 0]
- );
-
- await tx;
- },
- signedPlugin,
- testNetwork
- ),
- 20000
- );
-});
diff --git a/tests/src/bsc/deposit.test.js b/tests/src/bsc/deposit.test.js
deleted file mode 100644
index 986d952..0000000
--- a/tests/src/bsc/deposit.test.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
-} from "../test.fixture";
-
-const contractAddr = "0x7276241a669489e4bbb76f63d2a43bfe63080f2f";
-const pluginName = "staderlabs";
-const testNetwork = "bsc";
-const chainID = 56;
-const signedPlugin = false;
-// Test from replayed transaction: https://bscscan.com/tx/0xe88dd6cf1773a423b142b2823db99826a7ef95d8431a21cf5cb2005680a909e3
-const inputData = "0xd0e30db0";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Deposit BNB",
- zemu(
- model,
- async (sim, eth) => {
- const serializedTx = serializeTx(contractAddr, inputData, chainID);
-
- const tx = eth.signTransaction("44'/60'/0'/0/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 5 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_bnbx_" + model.name + "_deposit",
- [right_clicks, 0]
- );
-
- await tx;
- },
- signedPlugin,
- testNetwork
- ),
- 20000
- );
-});
diff --git a/tests/src/bsc/request_withdraw.test.js b/tests/src/bsc/request_withdraw.test.js
deleted file mode 100644
index f120974..0000000
--- a/tests/src/bsc/request_withdraw.test.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
-} from "../test.fixture";
-
-const contractAddr = "0x7276241a669489e4bbb76f63d2a43bfe63080f2f";
-const pluginName = "staderlabs";
-const testNetwork = "bsc";
-const chainID = 56;
-const signedPlugin = false;
-// Test from replayed transaction: https://bscscan.com/tx/0x1babe8a1c9fd2cfffb71bee4eaf4c99e38a35d59d526a52d32c4f25780866257
-const inputData =
- "0x745400c900000000000000000000000000000000000000000000000050232527c77e4000";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Request Withdraw BNBx",
- zemu(
- model,
- async (sim, eth) => {
- const serializedTx = serializeTx(contractAddr, inputData, chainID);
-
- const tx = eth.signTransaction("44'/60'/0'/0/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 5 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_bnbx_" + model.name + "_request_withdraw",
- [right_clicks, 0]
- );
-
- await tx;
- },
- signedPlugin,
- testNetwork
- ),
- 20000
- );
-});
diff --git a/tests/src/eth/ethx/claim.test.js b/tests/src/eth/ethx/claim.test.js
deleted file mode 100644
index e6a49e7..0000000
--- a/tests/src/eth/ethx/claim.test.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const contractAddr = "0xcf5ea1b38380f6af39068375516daf40ed70d299";
-const pluginName = "staderlabs";
-const testNetwork = "ethereum";
-const chainID = 1;
-// Test from replayed transaction: https://etherscan.io/tx/0x6a9c6ec076057ece2cd2201376e889fd58aed440ced33b769e78f86d0043a9a5
-const inputData =
- "0x02f8910156850680edd7ec850680edd7ec83015d09949f0491b32dbce587c50c4c43ab303b06478193a780a4379607f50000000000000000000000000000000000000000000000000000000000000042c080a0ef4bce4226c5f12be27b95257456c6f51268d46a4d34c5eee583dbe41266fb51a02ca1ee59d5ddfd731edeccc0599e6f76a9012420412c98008cd05bdc3bf52668";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Claim ETH",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 6 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_ethx_" + model.name + "_claim_eth",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 20000
- );
-});
diff --git a/tests/src/eth/ethx/deposit.test.js b/tests/src/eth/ethx/deposit.test.js
deleted file mode 100644
index f4c8982..0000000
--- a/tests/src/eth/ethx/deposit.test.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const contractAddr = "0xcf5ea1b38380f6af39068375516daf40ed70d299";
-const pluginName = "staderlabs";
-const testNetwork = "ethereum";
-const chainID = 1;
-// Test from replayed transaction: https://etherscan.io/tx/0x0879b63722348980a8d2e5118d33adfa0789c81c687f0d4d8b75276247c9299f
-const inputData =
- "0x02f8f701248405f5e1008501fa14a6d7830329eb94cf5ea1b38380f6af39068375516daf40ed70d299865af3107a4000b884b74825090000000000000000000000007e9bb9673ac38071a7699e6a3c48b8fbde574cd00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000a74657374696e6731323300000000000000000000000000000000000000000000c001a0e50fe06c37fda195c02ee64e359020fa135b7b2e9f9e4ffc12aa1b6430eda835a0732c210ac338e9ff2431c7f5076ce6cde517a6fa4d37a6339928e58e24d1a86f";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Deposit ETH",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 9 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_ethx_" + model.name + "_stake_eth",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/ethx/withdraw.test.js b/tests/src/eth/ethx/withdraw.test.js
deleted file mode 100644
index 43b7dc8..0000000
--- a/tests/src/eth/ethx/withdraw.test.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const contractAddr = "0xcf5ea1b38380f6af39068375516daf40ed70d299";
-const pluginName = "staderlabs";
-const testNetwork = "ethereum";
-const chainID = 1;
-// Test from replayed transaction: https://etherscan.io/tx/0x75bfb97b6f35a00f42267de655b8711d496575177e409d301b893fb8290f1b26
-const inputData =
- "0x02f9011101278405f5e100850202345eaa8306d1d9949f0491b32dbce587c50c4c43ab303b06478193a780b8a41f7ec12200000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000007e9bb9673ac38071a7699e6a3c48b8fbde574cd00000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000a74657374696e6731323300000000000000000000000000000000000000000000c080a0908adc7cdbe3110e6353592e11da106ec8ba4ca7172a1641058cb7bb26c5acefa07035284a6a0ef6f98708a30f498ac1ace86bafb8294683b4000cb638ad7beba1";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Request Withdraw ETH",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 9 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_ethx_" + model.name + "_request_withdraw_eth",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/kelp/claimETH.test.js b/tests/src/eth/kelp/claimETH.test.js
deleted file mode 100644
index 5f0e6ff..0000000
--- a/tests/src/eth/kelp/claimETH.test.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const testNetwork = "ethereum";
-// Test from replayed transaction: https://etherscan.io/tx/0xa5458f18af5bd00d7bda4332f33af93e0f7cd7294c6715dbf5a4c143f0a1d6e3
-const inputData =
- "0x02f89001078439d106808502f335de57830227ce9462de59c08eb5dae4b7e6f7a8cad3006d6965ec1680a46dbaf9ee000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeec080a0e5b528d407765077dc056f703a6b616bff83ed970eb2250615e94347846ad133a040c023c952756e5aa6d25dec78cb7f67f9ebb5f42de588d6e46c34e2976f6308";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Kelp Claim ETH",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 6 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_kelp_claim_eth_" + model.name,
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/kelp/claimLST.test.js b/tests/src/eth/kelp/claimLST.test.js
deleted file mode 100644
index 2e7bcf1..0000000
--- a/tests/src/eth/kelp/claimLST.test.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const testNetwork = "ethereum";
-// Test from replayed transaction: https://etherscan.io/tx/0x31a88ec3977a4cd4ab0a105607a9ac1d350e1f2a2148345f6bdf9b583a74518b
-const inputData =
- "0x02f8910181e48439d106808502c0b7a94e8302c6ad9462de59c08eb5dae4b7e6f7a8cad3006d6965ec1680a46dbaf9ee000000000000000000000000ac3e018457b222d93114458476f3e3416abbe38fc001a015b3a4d1d38f492c00322e7a1eef1f044ddfbe0f145031d80470e22ffa63dc24a07605ee5c0b3b1b0d216e10ee28a1db78cd723df9812d3ec2585beaaa9f0844e1";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Kelp Claim LST",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 6 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_kelp_claim_lst_" + model.name,
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/kelp/depositAsset.test.js b/tests/src/eth/kelp/depositAsset.test.js
deleted file mode 100644
index 6ae6700..0000000
--- a/tests/src/eth/kelp/depositAsset.test.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const testNetwork = "ethereum";
-// Test from replayed transaction: https://etherscan.io/tx/0xfc310710142f1d1b6da83ae7a74ccdc6e110b83b193c546ac74423b61d03cfd9
-const inputData =
- "0x02f9015401820221850746f00bd9850746f00bd98307066094036676389e48133b63a802f8635ad39e752d375d80b8e4c3ae1766000000000000000000000000a35b1b31ce002fbf2058d22f30f95d405200a15b0000000000000000000000000000000000000000000000001b340783b0b8800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000004065313663623065316333353133303164333338656661343334656531646166336631393335386363633363666161643163386264323733663736633133313561c001a0aec13856dbebd5a5dd1cca745781942327cb6a279f6276a8ec19c3c402294cd1a035b6f92a682f56ae9187eb84c3340c15f69649fdbbe396b5eaf7d16bb2826503";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Deposit LST",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 6 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_kelp_" + model.name + "_deposit_lst",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/kelp/depositETH.test.js b/tests/src/eth/kelp/depositETH.test.js
deleted file mode 100644
index 4d3e086..0000000
--- a/tests/src/eth/kelp/depositETH.test.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const testNetwork = "ethereum";
-// Test from replayed transaction: https://etherscan.io/tx/0x8a00de6dbc850f48e78b61a11c3061e3fc065507073921b8312bba9b4c713284
-const inputData =
- "0x02f90138018083902d038509f5d5b7778307a4db94036676389e48133b63a802f8635ad39e752d375d880d0b8d0508de0000b8c472c51c0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000042307836613137346533306162376238313262663631326462383932663038303634656364666161613638636166353034633330326630353236663066303930643836000000000000000000000000000000000000000000000000000000000000c080a0c451fdeb418249686444110516b6872489fdb57e5623e19e459a9f9dcb24487ba070a9fed5d2660b874f3b80bc14abb38d92863b1332c05dc9d11e6beb78d91034";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Deposit ETH",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 6 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_kelp_" + model.name + "_deposit_eth",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/kelp/initiateWithdrawalETH.test.js b/tests/src/eth/kelp/initiateWithdrawalETH.test.js
deleted file mode 100644
index 96a6696..0000000
--- a/tests/src/eth/kelp/initiateWithdrawalETH.test.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const testNetwork = "ethereum";
-// Test from replayed transaction: https://etherscan.io/tx/0x5a6a235be8865c5989bd5f604e9f4c14c442e5db0ee06b64e93a74ead5b5b14c
-const inputData =
- "0x02f8b00150839402a08501ccf6aae1830a78d19462de59c08eb5dae4b7e6f7a8cad3006d6965ec1680b844c8393ba9000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000015f021397cf0000c001a0b812d5b2183bd21ccde3765da1ad02a7233f835b01bc3519db9a123f84acbf38a0761578a1e66af567e40dcf4597af674956381fc85db0f2c9881f3f95eb863726";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Kelp Unstake ETH",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 7 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_kelp_unstake_eth_" + model.name,
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/kelp/initiateWithdrawalLST.test.js b/tests/src/eth/kelp/initiateWithdrawalLST.test.js
deleted file mode 100644
index b2000a3..0000000
--- a/tests/src/eth/kelp/initiateWithdrawalLST.test.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const testNetwork = "ethereum";
-// Test from replayed transaction: https://etherscan.io/tx/0xa44d01da432225b7ad2cc49b0160d57464439107044af3497a9b71d7677c82c7
-const inputData =
- "0x02f8b001318421bef4e984dfce82df83105db09462de59c08eb5dae4b7e6f7a8cad3006d6965ec1680b844c8393ba9000000000000000000000000a35b1b31ce002fbf2058d22f30f95d405200a15b0000000000000000000000000000000000000000000000000f99f5f1987e8000c001a05dd079fce787f4a03da05f8ba68d6a1abe3d094a6985c27dab843e84eff027b9a005fc6255e49140ca4d76477e6a4f3d6ae09d61f83a56655e166e960683d3127e";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Kelp Unstake LST",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 7 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_kelp_unstake_lst_" + model.name,
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 50000
- );
-});
diff --git a/tests/src/eth/maticx/claim_withdrawal.test.js b/tests/src/eth/maticx/claim_withdrawal.test.js
deleted file mode 100644
index 90bfce5..0000000
--- a/tests/src/eth/maticx/claim_withdrawal.test.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const contractAddr = "0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645";
-const pluginName = "staderlabs";
-const testNetwork = "ethereum";
-
-// Test from replayed transaction: https://etherscan.io/tx/0xf3c639002557eafa1560159010093927560ebbb351720c279be67bd3c480d103
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Claim Matic Tokens",
- zemu(model, async (sim, eth) => {
- // The rawTx of the tx up above is accessible through: https://etherscan.io/getRawTx?tx=0xf3c639002557eafa1560159010093927560ebbb351720c279be67bd3c480d103
- const serializedTx = txFromEtherscan(
- "0x02f89001078459682f008505a6d71662830307bc94f03a7eb46d01d9ecaa104558c732cf82f6b6b64580a4f84444360000000000000000000000000000000000000000000000000000000000000000c080a01dae94162970e34ff707029d274c8ab57841d80d0b374f3983b63e20d095e9f5a00ade1769548658f2a1065d6b963f49627b7cc701cb6bdcc98a7940f1b6ba5f96"
- );
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 6 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_maticx_" + model.name + "_claim_matic",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 20000
- );
-});
diff --git a/tests/src/eth/maticx/request_withdraw.test.js b/tests/src/eth/maticx/request_withdraw.test.js
deleted file mode 100644
index edefce9..0000000
--- a/tests/src/eth/maticx/request_withdraw.test.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const contractAddr = "0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645";
-const pluginName = "staderlabs";
-const testNetwork = "ethereum";
-const chainID = 1;
-// Test from replayed transaction: https://etherscan.io/tx/0x718110ca67a3f440195c388c16a1749e0d89877817d2d3e944365855f642145d
-const inputData =
- "0x02f890012c8459682f008501deb8635e8309c5c794f03a7eb46d01d9ecaa104558c732cf82f6b6b64580a4745400c9000000000000000000000000000000000000000000000045c41fde9b3d420000c001a020d9ed1733bdea2b2fc59f7b0e4037ede9f45b7992f25c5c996f1d7ede25313aa043b6a72566c01b2d2f8abbdd3824ea5fc0410ac728cc15f5bb5d01070df4d3ca";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Unstake MaticX Tokens",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 6 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_maticx_" + model.name + "_unstake_maticx",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 20000
- );
-});
diff --git a/tests/src/eth/maticx/submit.test.js b/tests/src/eth/maticx/submit.test.js
deleted file mode 100644
index fe9e36d..0000000
--- a/tests/src/eth/maticx/submit.test.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
- txFromEtherscan,
-} from "../../test.fixture";
-
-const contractAddr = "0xf03a7eb46d01d9ecaa104558c732cf82f6b6b645";
-const pluginName = "staderlabs";
-const testNetwork = "ethereum";
-const chainID = 1;
-// Test from replayed transaction: https://etherscan.io/tx/0x92f606f3ab623de706e4a1a2bfdcfa95d07f071f2f3aacfc729aefa6b3c6d94c
-const inputData =
- "0x02f890012b8459682f008501e45cb83d8307229094f03a7eb46d01d9ecaa104558c732cf82f6b6b64580a4ea99c2a60000000000000000000000000000000000000000000000481591030b2a830000c080a059adbe59fe76966e72c711b1487063246f5997278af9f2c7924aa49a23a50aaaa03a9c651f564666a26faa3f8ab9235bfc4d9d62a804075944d314a105e2519a30";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Submit Matic Tokens",
- zemu(model, async (sim, eth) => {
- const serializedTx = txFromEtherscan(inputData);
-
- const tx = eth.signTransaction("44'/60'/0'/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 5 : 4;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_maticx_" + model.name + "_stake_matic",
- [right_clicks, 0]
- );
-
- await tx;
- }),
- 20000
- );
-});
diff --git a/tests/src/ethx/test_ethx_claim.py b/tests/src/ethx/test_ethx_claim.py
new file mode 100644
index 0000000..23a4c06
--- /dev/null
+++ b/tests/src/ethx/test_ethx_claim.py
@@ -0,0 +1,21 @@
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0x9F0491B32DBce587c50c4C43AB303b06478193A7"
+)
+
+# Test from replayed transaction: https://etherscan.io/tx/0x6a9c6ec076057ece2cd2201376e889fd58aed440ced33b769e78f86d0043a9a5
+
+def test_ethx_claim(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0x379607f50000000000000000000000000000000000000000000000000000000000000042"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr
+ )
+
diff --git a/tests/src/ethx/test_ethx_deposit.py b/tests/src/ethx/test_ethx_deposit.py
new file mode 100644
index 0000000..4bf8a46
--- /dev/null
+++ b/tests/src/ethx/test_ethx_deposit.py
@@ -0,0 +1,22 @@
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0xcf5EA1b38380f6aF39068375516Daf40Ed70D299"
+)
+
+# Test from replayed transaction: https://etherscan.io/tx/0x0879b63722348980a8d2e5118d33adfa0789c81c687f0d4d8b75276247c9299f
+
+def test_ethx_deposit(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0xb74825090000000000000000000000007e9bb9673ac38071a7699e6a3c48b8fbde574cd00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000a74657374696e6731323300000000000000000000000000000000000000000000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr,
+ value=0.0001
+ )
+
diff --git a/tests/src/ethx/test_ethx_withdraw.py b/tests/src/ethx/test_ethx_withdraw.py
new file mode 100644
index 0000000..4570813
--- /dev/null
+++ b/tests/src/ethx/test_ethx_withdraw.py
@@ -0,0 +1,21 @@
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0x9F0491B32DBce587c50c4C43AB303b06478193A7"
+)
+
+# Test from replayed transaction: https://etherscan.io/tx/0x75bfb97b6f35a00f42267de655b8711d496575177e409d301b893fb8290f1b26
+
+def test_ethx_withdraw(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0x1f7ec12200000000000000000000000000000000000000000000000000005af3107a40000000000000000000000000007e9bb9673ac38071a7699e6a3c48b8fbde574cd00000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000a74657374696e6731323300000000000000000000000000000000000000000000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr
+ )
+
diff --git a/tests/src/generate_plugin_config.js b/tests/src/generate_plugin_config.js
deleted file mode 100644
index ff831a1..0000000
--- a/tests/src/generate_plugin_config.js
+++ /dev/null
@@ -1,87 +0,0 @@
-// You will need to create a folder with this name, and put in the abis of your contracts in `abis/`.
-// You will also need to create a `b2c.json` file that will hold the methodIDs and location of
-// the erc20 tokens that should get displayed.
-// EDIT THIS: replace with the name of your plugin (lowercase)
-const pluginFolder = "staderlabs";
-
-function serialize_data(pluginName, contractAddress, selector) {
- const len = Buffer.from([pluginName.length]);
- const name = Buffer.from(pluginName)
- const address = Buffer.from(contractAddress.slice(2), "hex");
- const methodid = Buffer.from(selector.slice(2), "hex");
-
- // Taking .slice(2) to remove the "0x" prefix
- return Buffer.concat([len, name, address, methodid]);
-}
-
-function assert(condition, message) {
- if (!condition) {
- throw message || "Assertion failed";
- }
-}
-
-// Function to generate the plugin configuration.
-function generate_plugin_config(network="ethereum") {
-
- var fs = require('fs');
- var files = fs.readdirSync(`networks/${network}/${pluginFolder}/abis/`);
-
-
- // `contracts_to_abis` holds a maping of contract addresses to abis
- let contracts_to_abis = {};
- for (let abiFileName of files) {
- assert(abiFileName.toLocaleLowerCase() == abiFileName, `FAILED: File ${abiFileName} should be lower case.`);
-
- // Strip ".json" suffix
- let contractAddress = abiFileName.slice(0, abiFileName.length - ".json".length);
- // Load abi
- let abi = require(`../networks/${network}/${pluginFolder}/abis/${abiFileName}`);
- // Add it to contracts
- contracts_to_abis[contractAddress] = abi;
- }
-
- // Load the b2c.json file
- const b2c = require(`../networks/${network}/${pluginFolder}/b2c.json`);
-
-
- let res = {};
-
- // Place holder signature
- const PLACE_HOLDER_SIGNATURE = "3045022100f6e1a922c745e244fa3ed9a865491672808ef93f492ee0410861d748c5de201f0220160d6522499f3a84fa3e744b3b81e49e129e997b28495e58671a1169b16fa777";
-
- // Iterate through contracts in b2c.json file
- for (let contract of b2c["contracts"]) {
- let methods_info = {};
- const contractAddress = contract["address"];
- assert(contractAddress.toLowerCase() == contractAddress, `FAILED: Contract Address ${contractAddress} should be lower case`);
-
- for (let [selector, values] of Object.entries(contract["selectors"])) {
-
- assert(selector.toLowerCase() == selector, `FAILED: Selector ${selector} should be lower case`);
-
- // Gather up the info needed for the end result
- const pluginName = values["plugin"];
- const serializedData = serialize_data(pluginName, contractAddress, selector);
- const signature = PLACE_HOLDER_SIGNATURE;
-
- const erc20OfInterest = values["erc20OfInterest"];
- assert(erc20OfInterest.length <= 2, `Maximum of 2 erc20OfInterest allowed. Got ${erc20OfInterest.length}`);
-
-
- // Put them in `methods_info`
- methods_info[selector] = {"erc20OfInterest": values["erc20OfInterest"], "plugin": pluginName, "serialized_data": serializedData, "signature": signature};
- }
- // Add the abi to methods_info
- methods_info["abi"] = contracts_to_abis[contractAddress];
- // Add the methods_info to the end result
- res[contractAddress] = methods_info;
- }
-
- assert(res.length == contracts_to_abis.length, `FAILED: ${res.length} contracts in b2c.json and ${contracts_to_abis.length} contracts in abis/ folder`);
-
- return res;
-}
-
-module.exports = {
- generate_plugin_config,
-};
diff --git a/tests/src/maticx/eth/test_maticx_claim_withdrawal.py b/tests/src/maticx/eth/test_maticx_claim_withdrawal.py
new file mode 100644
index 0000000..2541b71
--- /dev/null
+++ b/tests/src/maticx/eth/test_maticx_claim_withdrawal.py
@@ -0,0 +1,21 @@
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0xf03A7Eb46d01d9EcAA104558C732Cf82f6B6B645"
+)
+
+# Test from replayed transaction: https://etherscan.io/tx/0xf3c639002557eafa1560159010093927560ebbb351720c279be67bd3c480d103
+
+def test_maticx_claim_withdrawal(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0xf84444360000000000000000000000000000000000000000000000000000000000000000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr
+ )
+
diff --git a/tests/src/maticx/eth/test_maticx_request_withdraw.py b/tests/src/maticx/eth/test_maticx_request_withdraw.py
new file mode 100644
index 0000000..55c7294
--- /dev/null
+++ b/tests/src/maticx/eth/test_maticx_request_withdraw.py
@@ -0,0 +1,21 @@
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0xf03A7Eb46d01d9EcAA104558C732Cf82f6B6B645"
+)
+
+# Test from replayed transaction: https://etherscan.io/tx/0x718110ca67a3f440195c388c16a1749e0d89877817d2d3e944365855f642145d
+
+def test_maticx_request_withdraw(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0x745400c9000000000000000000000000000000000000000000000045c41fde9b3d420000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr
+ )
+
diff --git a/tests/src/maticx/eth/test_maticx_submit.py b/tests/src/maticx/eth/test_maticx_submit.py
new file mode 100644
index 0000000..253a748
--- /dev/null
+++ b/tests/src/maticx/eth/test_maticx_submit.py
@@ -0,0 +1,21 @@
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0xf03A7Eb46d01d9EcAA104558C732Cf82f6B6B645"
+)
+
+# Test from replayed transaction: https://etherscan.io/tx/0x92f606f3ab623de706e4a1a2bfdcfa95d07f071f2f3aacfc729aefa6b3c6d94c
+
+def test_maticx_submit(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0xea99c2a60000000000000000000000000000000000000000000000481591030b2a830000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr
+ )
+
diff --git a/tests/src/maticx/polygon/test_maticx_claim_maticx_swap.py b/tests/src/maticx/polygon/test_maticx_claim_maticx_swap.py
new file mode 100644
index 0000000..663c678
--- /dev/null
+++ b/tests/src/maticx/polygon/test_maticx_claim_maticx_swap.py
@@ -0,0 +1,23 @@
+from eth_typing import ChainId
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0xfd225C9e6601C9d38d8F98d8731BF59eFcF8C0E3"
+)
+
+# Test from replayed transaction: https://polygonscan.com/tx/0xe26214e3577874118e16ce1a605a9ad06b0836c0507e2071ddc3b4bac795b2a0
+
+def test_maticx_claim_maticx_swap(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0x77baf2090000000000000000000000000000000000000000000000000000000000000000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr,
+ ChainId.MATIC
+ )
+
diff --git a/tests/src/maticx/polygon/test_maticx_request_maticx_swap.py b/tests/src/maticx/polygon/test_maticx_request_maticx_swap.py
new file mode 100644
index 0000000..f8832a2
--- /dev/null
+++ b/tests/src/maticx/polygon/test_maticx_request_maticx_swap.py
@@ -0,0 +1,23 @@
+from eth_typing import ChainId
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0xfd225C9e6601C9d38d8F98d8731BF59eFcF8C0E3"
+)
+
+# Test from replayed transaction: https://polygonscan.com/tx/0x1303f05d50d17a8efe0169c022439ebf33e3ae0c0f3285cada81287242cc94ee
+
+def test_maticx_request_maticx_swap(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0x48eaf6d600000000000000000000000000000000000000000000000792da134a3d0c8000"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr,
+ ChainId.MATIC
+ )
+
diff --git a/tests/src/maticx/polygon/test_maticx_swap_matic_for_maticx_via_instantpool.py b/tests/src/maticx/polygon/test_maticx_swap_matic_for_maticx_via_instantpool.py
new file mode 100644
index 0000000..af5bafe
--- /dev/null
+++ b/tests/src/maticx/polygon/test_maticx_swap_matic_for_maticx_via_instantpool.py
@@ -0,0 +1,24 @@
+from eth_typing import ChainId
+from web3 import Web3
+from tests.utils import run_test, load_contract
+
+contract = load_contract(
+ "0xfd225C9e6601C9d38d8F98d8731BF59eFcF8C0E3"
+)
+
+# Test from replayed transaction: https://polygonscan.com/tx/0xc909318f4c939254d608cd4964abcc287e3ea247315fe06916ca7ac86e7e0987
+
+def test_maticx_swap_matic_for_maticx_via_instantpool(backend, firmware, navigator, test_name, wallet_addr):
+ data = "0xc78cf1a0"
+ run_test(
+ contract,
+ data,
+ backend,
+ firmware,
+ navigator,
+ test_name,
+ wallet_addr,
+ ChainId.MATIC,
+ value=25
+ )
+
diff --git a/tests/src/polygon/claim_maticx_swap.test.js b/tests/src/polygon/claim_maticx_swap.test.js
deleted file mode 100644
index db2b9c0..0000000
--- a/tests/src/polygon/claim_maticx_swap.test.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
-} from "../test.fixture";
-
-const contractAddr = "0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3";
-const pluginName = "staderlabs";
-const testNetwork = "polygon";
-const chainID = 137;
-const signedPlugin = false;
-// Test from replayed transaction: https://polygonscan.com/tx/0xe26214e3577874118e16ce1a605a9ad06b0836c0507e2071ddc3b4bac795b2a0
-const inputData =
- "0x77baf2090000000000000000000000000000000000000000000000000000000000000000";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Claim MaticX Swap",
- zemu(
- model,
- async (sim, eth) => {
- const serializedTx = serializeTx(contractAddr, inputData, chainID);
-
- const tx = eth.signTransaction("44'/60'/0'/0/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 5 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_maticx_" + model.name + "_claim_maticx_swap",
- [right_clicks, 0]
- );
-
- await tx;
- },
- signedPlugin,
- testNetwork
- ),
- 20000
- );
-});
diff --git a/tests/src/polygon/request_maticx_swap.test.js b/tests/src/polygon/request_maticx_swap.test.js
deleted file mode 100644
index 32db9ae..0000000
--- a/tests/src/polygon/request_maticx_swap.test.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
-} from "../test.fixture";
-
-const contractAddr = "0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3";
-const pluginName = "staderlabs";
-const testNetwork = "polygon";
-const chainID = 137;
-const signedPlugin = false;
-// Test from replayed transaction: https://polygonscan.com/tx/0x1303f05d50d17a8efe0169c022439ebf33e3ae0c0f3285cada81287242cc94ee
-const inputData =
- "0x48eaf6d600000000000000000000000000000000000000000000000792da134a3d0c8000";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Request MaticX Swap",
- zemu(
- model,
- async (sim, eth) => {
- const serializedTx = serializeTx(contractAddr, inputData, chainID);
-
- const tx = eth.signTransaction("44'/60'/0'/0/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 5 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_maticx_" + model.name + "_request_maticx_swap",
- [right_clicks, 0]
- );
-
- await tx;
- },
- signedPlugin,
- testNetwork
- ),
- 20000
- );
-});
diff --git a/tests/src/polygon/swap_matic_for_maticx_via_instantpool.test.js b/tests/src/polygon/swap_matic_for_maticx_via_instantpool.test.js
deleted file mode 100644
index f0f792b..0000000
--- a/tests/src/polygon/swap_matic_for_maticx_via_instantpool.test.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import "core-js/stable";
-import "regenerator-runtime";
-import {
- waitForAppScreen,
- zemu,
- nano_models,
- serializeTx,
-} from "../test.fixture";
-
-const contractAddr = "0xfd225c9e6601c9d38d8f98d8731bf59efcf8c0e3";
-const pluginName = "staderlabs";
-const testNetwork = "polygon";
-const chainID = 137;
-const signedPlugin = false;
-// Test from replayed transaction: https://polygonscan.com/tx/0xc909318f4c939254d608cd4964abcc287e3ea247315fe06916ca7ac86e7e0987
-const inputData = "0xc78cf1a0";
-
-nano_models.forEach(function (model) {
- test(
- "[Nano " + model.letter + "] Swap Matic for MaticX via Instant Pool",
- zemu(
- model,
- async (sim, eth) => {
- const serializedTx = serializeTx(contractAddr, inputData, chainID);
-
- const tx = eth.signTransaction("44'/60'/0'/0/0", serializedTx);
-
- const right_clicks = model.letter === "S" ? 5 : 5;
-
- // Wait for the application to actually load and parse the transaction
- await waitForAppScreen(sim);
- // Navigate the display by pressing the right button `right_clicks` times, then pressing both buttons to accept the transaction.
- await sim.navigateAndCompareSnapshots(
- ".",
- testNetwork + "_maticx_" + model.name + "_swap_matic_via_ipool",
- [right_clicks, 0]
- );
-
- await tx;
- },
- signedPlugin,
- testNetwork
- ),
- 20000
- );
-});
diff --git a/tests/src/test.fixture.js b/tests/src/test.fixture.js
deleted file mode 100644
index b0eeb4b..0000000
--- a/tests/src/test.fixture.js
+++ /dev/null
@@ -1,147 +0,0 @@
-import Zemu, { DEFAULT_START_OPTIONS, DeviceModel } from "@zondax/zemu";
-import Eth from "@ledgerhq/hw-app-eth";
-import { generate_plugin_config } from "./generate_plugin_config";
-import { parseEther, parseUnits, RLP } from "ethers/lib/utils";
-import { ethers } from "ethers";
-
-const transactionUploadDelay = 60000;
-
-async function waitForAppScreen(sim) {
- await sim.waitUntilScreenIsNot(
- sim.getMainMenuSnapshot(),
- transactionUploadDelay
- );
-}
-
-const sim_options_nano = {
- ...DEFAULT_START_OPTIONS,
- logging: true,
- X11: true,
- startDelay: 5000,
- startText: "is ready",
-};
-
-const Resolve = require("path").resolve;
-
-const NANOS_ETH_PATH = Resolve("elfs/ethereum_nanos.elf");
-const NANOSP_ETH_PATH = Resolve("elfs/ethereum_nanosp.elf");
-const NANOX_ETH_PATH = Resolve("elfs/ethereum_nanox.elf");
-
-const NANOS_PLUGIN_PATH = Resolve("elfs/plugin_nanos.elf");
-const NANOSP_PLUGIN_PATH = Resolve("elfs/plugin_nanosp.elf");
-const NANOX_PLUGIN_PATH = Resolve("elfs/plugin_nanox.elf");
-
-const nano_models: DeviceModel[] = [
- {
- name: "nanos",
- letter: "S",
- path: NANOS_PLUGIN_PATH,
- eth_path: NANOS_ETH_PATH,
- },
- {
- name: "nanosp",
- letter: "SP",
- path: NANOSP_PLUGIN_PATH,
- eth_path: NANOSP_ETH_PATH,
- },
- {
- name: "nanox",
- letter: "X",
- path: NANOX_PLUGIN_PATH,
- eth_path: NANOX_ETH_PATH,
- },
-];
-
-const staderlabsJSON = generate_plugin_config();
-
-const SPECULOS_ADDRESS = "0xFE984369CE3919AA7BB4F431082D027B4F8ED70C";
-const RANDOM_ADDRESS = "0xaaaabbbbccccddddeeeeffffgggghhhhiiiijjjj";
-
-let genericTx = {
- nonce: Number(0),
- gasLimit: Number(21000),
- gasPrice: parseUnits("1", "gwei"),
- value: parseEther("1.56"),
- chainId: 1,
- to: RANDOM_ADDRESS,
- data: null,
-};
-
-const TIMEOUT = 1000000;
-
-// Generates a serializedTransaction from a rawHexTransaction copy pasted from etherscan.
-function txFromEtherscan(rawTx) {
- // Remove 0x prefix
- rawTx = rawTx.slice(2);
-
- let txType = rawTx.slice(0, 2);
- if (txType == "02" || txType == "01") {
- // Remove "02" prefix
- rawTx = rawTx.slice(2);
- } else {
- txType = "";
- }
-
- let decoded = RLP.decode("0x" + rawTx);
- if (txType != "") {
- decoded = decoded.slice(0, decoded.length - 3); // remove v, r, s
- } else {
- decoded[decoded.length - 1] = "0x"; // empty
- decoded[decoded.length - 2] = "0x"; // empty
- decoded[decoded.length - 3] = "0x01"; // chainID 1
- }
-
- // Encode back the data, drop the '0x' prefix
- let encoded = RLP.encode(decoded).slice(2);
-
- // Don't forget to prepend the txtype
- return txType + encoded;
-}
-
-function zemu(device, func, signed = false, testNetwork = "ethereum") {
- return async () => {
- jest.setTimeout(TIMEOUT);
- let elf_path;
- let lib_elf;
- elf_path = device.eth_path;
- lib_elf = { Staderlabs: device.path };
-
- const sim = new Zemu(elf_path, lib_elf);
- try {
- await sim.start({ ...sim_options_nano, model: device.name });
- const transport = await sim.getTransport();
- const eth = new Eth(transport);
- eth.setLoadConfig({
- baseURL: null,
- extraPlugins: generate_plugin_config(testNetwork),
- });
- await func(sim, eth);
- } finally {
- await sim.close();
- }
- };
-}
-
-function serializeTx(contractAddr, inputData, chainId) {
- // Get the generic transaction template
- let unsignedTx = genericTx;
- //adapt to the appropriate network
- unsignedTx.chainId = chainId;
- // Modify `to` to make it interact with the contract
- unsignedTx.to = contractAddr;
- // Modify the attached data
- unsignedTx.data = inputData;
- // Create serializedTx and remove the "0x" prefix
- return ethers.utils.serializeTransaction(unsignedTx).slice(2);
-}
-
-module.exports = {
- zemu,
- waitForAppScreen,
- genericTx,
- serializeTx,
- nano_models,
- SPECULOS_ADDRESS,
- RANDOM_ADDRESS,
- txFromEtherscan,
-};
diff --git a/tests/utils.py b/tests/utils.py
new file mode 100644
index 0000000..5a18989
--- /dev/null
+++ b/tests/utils.py
@@ -0,0 +1,110 @@
+
+
+import os
+import re
+import json
+
+from web3 import Web3
+from eth_typing import ChainId
+
+from ledger_app_clients.ethereum.utils import get_selector_from_data, recover_transaction
+from ragger.navigator import NavInsID
+
+from pathlib import Path
+from typing import Optional
+
+from ledger_app_clients.ethereum.client import EthAppClient
+import ledger_app_clients.ethereum.response_parser as ResponseParser
+
+DERIVATION_PATH = "m/44'/60'/0'/0/0"
+makefile_relative_path = "../Makefile"
+
+makefile_path = (Path(os.path.dirname(os.path.realpath(__file__))) / Path(makefile_relative_path)).resolve()
+
+pattern = r'.*APPNAME.*=.*'
+
+default_strip_parameter = " \t\n\r\x0b\x0c"
+
+ROOT_SCREENSHOT_PATH = Path(__file__).parent
+ABIS_FOLDER = "%s/abis" % (os.path.dirname(__file__))
+
+def get_appname_from_makefile() -> str:
+ '''
+ Parse the app Makefile to automatically get the APPNAME value
+ '''
+ APPNAME: Optional[str] = None
+ with open(makefile_path) as file:
+ for line in file:
+ if re.search(pattern, line):
+ _, var = line.partition("=")[::2]
+ APPNAME = var.strip(default_strip_parameter + '"')
+
+ if APPNAME is None:
+ raise AssertionError("Unable to find APPNAME in the Makefile")
+
+ return APPNAME
+
+PLUGIN_NAME = get_appname_from_makefile()
+
+def load_contract(address):
+ address = address.lower()
+ with open("%s/%s.abi.json" % (ABIS_FOLDER, address)) as file:
+ return Web3().eth.contract(
+ abi=json.load(file),
+ # Get address from filename
+ address=bytes.fromhex(
+ address[2:]
+ )
+ )
+
+def run_test(contract, data, backend, firmware, navigator, test_name, wallet_addr, chain_id=ChainId.ETH, value=0, gas=300000):
+ client = EthAppClient(backend)
+
+ # first setup the external plugin
+ client.set_external_plugin(PLUGIN_NAME,
+ contract.address,
+ # Extract function selector from the encoded data
+ get_selector_from_data(data))
+
+ tx_params = {
+ "nonce": 20,
+ "maxFeePerGas": Web3.to_wei(145, "gwei"),
+ "maxPriorityFeePerGas": Web3.to_wei(1.5, "gwei"),
+ "gas": gas,
+ "to": contract.address,
+ "value": Web3.to_wei(value, "ether"),
+ "chainId": chain_id,
+ "data": data
+ }
+
+ # send the transaction
+ with client.sign(DERIVATION_PATH, tx_params):
+ # Validate the on-screen request by performing the navigation appropriate for this device
+ if firmware.is_nano:
+ navigator.navigate_until_text_and_compare(NavInsID.RIGHT_CLICK,
+ [NavInsID.BOTH_CLICK],
+ "Accept",
+ ROOT_SCREENSHOT_PATH,
+ test_name)
+ else:
+ navigator.navigate_until_text_and_compare(NavInsID.SWIPE_CENTER_TO_LEFT,
+ [NavInsID.USE_CASE_REVIEW_CONFIRM,
+ NavInsID.USE_CASE_STATUS_DISMISS],
+ "Hold to sign",
+ ROOT_SCREENSHOT_PATH,
+ test_name)
+ # verify signature
+ vrs = ResponseParser.signature(client.response().data)
+ addr = recover_transaction(tx_params, vrs)
+ assert addr == wallet_addr.get()
+
+class WalletAddr:
+ client: EthAppClient
+
+ def __init__(self, backend):
+ self.client = EthAppClient(backend)
+
+ def get(self, path=DERIVATION_PATH) -> bytes:
+ with self.client.get_public_addr(display=False, bip32_path=path):
+ pass
+ return ResponseParser.pk_addr(self.client.response().data)[1]
diff --git a/tests/yarn.lock b/tests/yarn.lock
deleted file mode 100644
index a0277df..0000000
--- a/tests/yarn.lock
+++ /dev/null
@@ -1,5121 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@ampproject/remapping@^2.1.0":
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d"
- integrity sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==
- dependencies:
- "@jridgewell/gen-mapping" "^0.1.0"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@ampproject/remapping@^2.2.0":
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630"
- integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==
- dependencies:
- "@jridgewell/gen-mapping" "^0.3.0"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@babel/cli@^7.22.6":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/cli/-/cli-7.23.0.tgz#1d7f37c44d4117c67df46749e0c86e11a58cc64b"
- integrity sha512-17E1oSkGk2IwNILM4jtfAvgjt+ohmpfBky8aLerUfYZhiPNg7ca+CRCxZn8QDxwNhV/upsc2VHBCqGFIR+iBfA==
- dependencies:
- "@jridgewell/trace-mapping" "^0.3.17"
- commander "^4.0.1"
- convert-source-map "^2.0.0"
- fs-readdir-recursive "^1.1.0"
- glob "^7.2.0"
- make-dir "^2.1.0"
- slash "^2.0.0"
- optionalDependencies:
- "@nicolo-ribaudo/chokidar-2" "2.1.8-no-fsevents.3"
- chokidar "^3.4.0"
-
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a"
- integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==
- dependencies:
- "@babel/highlight" "^7.18.6"
-
-"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.22.13":
- version "7.22.13"
- resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e"
- integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==
- dependencies:
- "@babel/highlight" "^7.22.13"
- chalk "^2.4.2"
-
-"@babel/compat-data@^7.18.8":
- version "7.18.8"
- resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.18.8.tgz#2483f565faca607b8535590e84e7de323f27764d"
- integrity sha512-HSmX4WZPPK3FUxYp7g2T6EyO8j96HlZJlxmKPSh6KAcqwyDrfx7hKjXpAW/0FhFfTJsR0Yt4lAjLI2coMptIHQ==
-
-"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.23.2":
- version "7.23.2"
- resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.2.tgz#6a12ced93455827037bfb5ed8492820d60fc32cc"
- integrity sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==
-
-"@babel/core@^7.11.6", "@babel/core@^7.22.8":
- version "7.23.2"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.2.tgz#ed10df0d580fff67c5f3ee70fd22e2e4c90a9f94"
- integrity sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==
- dependencies:
- "@ampproject/remapping" "^2.2.0"
- "@babel/code-frame" "^7.22.13"
- "@babel/generator" "^7.23.0"
- "@babel/helper-compilation-targets" "^7.22.15"
- "@babel/helper-module-transforms" "^7.23.0"
- "@babel/helpers" "^7.23.2"
- "@babel/parser" "^7.23.0"
- "@babel/template" "^7.22.15"
- "@babel/traverse" "^7.23.2"
- "@babel/types" "^7.23.0"
- convert-source-map "^2.0.0"
- debug "^4.1.0"
- gensync "^1.0.0-beta.2"
- json5 "^2.2.3"
- semver "^6.3.1"
-
-"@babel/core@^7.12.3":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.18.9.tgz#805461f967c77ff46c74ca0460ccf4fe933ddd59"
- integrity sha512-1LIb1eL8APMy91/IMW+31ckrfBM4yCoLaVzoDhZUKSM4cu1L1nIidyxkCgzPAgrC5WEz36IPEr/eSeSF9pIn+g==
- dependencies:
- "@ampproject/remapping" "^2.1.0"
- "@babel/code-frame" "^7.18.6"
- "@babel/generator" "^7.18.9"
- "@babel/helper-compilation-targets" "^7.18.9"
- "@babel/helper-module-transforms" "^7.18.9"
- "@babel/helpers" "^7.18.9"
- "@babel/parser" "^7.18.9"
- "@babel/template" "^7.18.6"
- "@babel/traverse" "^7.18.9"
- "@babel/types" "^7.18.9"
- convert-source-map "^1.7.0"
- debug "^4.1.0"
- gensync "^1.0.0-beta.2"
- json5 "^2.2.1"
- semver "^6.3.0"
-
-"@babel/generator@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.18.9.tgz#68337e9ea8044d6ddc690fb29acae39359cca0a5"
- integrity sha512-wt5Naw6lJrL1/SGkipMiFxJjtyczUWTP38deiP1PO60HsBjDeKk08CGC3S8iVuvf0FmTdgKwU1KIXzSKL1G0Ug==
- dependencies:
- "@babel/types" "^7.18.9"
- "@jridgewell/gen-mapping" "^0.3.2"
- jsesc "^2.5.1"
-
-"@babel/generator@^7.23.0", "@babel/generator@^7.7.2":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420"
- integrity sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==
- dependencies:
- "@babel/types" "^7.23.0"
- "@jridgewell/gen-mapping" "^0.3.2"
- "@jridgewell/trace-mapping" "^0.3.17"
- jsesc "^2.5.1"
-
-"@babel/helper-annotate-as-pure@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz#eaa49f6f80d5a33f9a5dd2276e6d6e451be0a6bb"
- integrity sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-annotate-as-pure@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882"
- integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==
- dependencies:
- "@babel/types" "^7.22.5"
-
-"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.5":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956"
- integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==
- dependencies:
- "@babel/types" "^7.22.15"
-
-"@babel/helper-compilation-targets@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.9.tgz#69e64f57b524cde3e5ff6cc5a9f4a387ee5563bf"
- integrity sha512-tzLCyVmqUiFlcFoAPLA/gL9TeYrF61VLNtb+hvkuVaB5SUjW7jcfrglBIX1vUIoT7CLP3bBlIMeyEsIl2eFQNg==
- dependencies:
- "@babel/compat-data" "^7.18.8"
- "@babel/helper-validator-option" "^7.18.6"
- browserslist "^4.20.2"
- semver "^6.3.0"
-
-"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.5", "@babel/helper-compilation-targets@^7.22.6":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52"
- integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==
- dependencies:
- "@babel/compat-data" "^7.22.9"
- "@babel/helper-validator-option" "^7.22.15"
- browserslist "^4.21.9"
- lru-cache "^5.1.1"
- semver "^6.3.1"
-
-"@babel/helper-create-class-features-plugin@^7.18.6":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.18.9.tgz#d802ee16a64a9e824fcbf0a2ffc92f19d58550ce"
- integrity sha512-WvypNAYaVh23QcjpMR24CwZY2Nz6hqdOcFdPbNpV56hL5H6KiFheO7Xm1aPdlLQ7d5emYZX7VZwPp9x3z+2opw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-function-name" "^7.18.9"
- "@babel/helper-member-expression-to-functions" "^7.18.9"
- "@babel/helper-optimise-call-expression" "^7.18.6"
- "@babel/helper-replace-supers" "^7.18.9"
- "@babel/helper-split-export-declaration" "^7.18.6"
-
-"@babel/helper-create-class-features-plugin@^7.22.11", "@babel/helper-create-class-features-plugin@^7.22.5":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz#97a61b385e57fe458496fad19f8e63b63c867de4"
- integrity sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.22.5"
- "@babel/helper-environment-visitor" "^7.22.5"
- "@babel/helper-function-name" "^7.22.5"
- "@babel/helper-member-expression-to-functions" "^7.22.15"
- "@babel/helper-optimise-call-expression" "^7.22.5"
- "@babel/helper-replace-supers" "^7.22.9"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
- "@babel/helper-split-export-declaration" "^7.22.6"
- semver "^6.3.1"
-
-"@babel/helper-create-regexp-features-plugin@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.18.6.tgz#3e35f4e04acbbf25f1b3534a657610a000543d3c"
- integrity sha512-7LcpH1wnQLGrI+4v+nPp+zUvIkF9x0ddv1Hkdue10tg3gmRnLy97DXh4STiOf1qeIInyD69Qv5kKSZzKD8B/7A==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.18.6"
- regexpu-core "^5.1.0"
-
-"@babel/helper-create-regexp-features-plugin@^7.22.5":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1"
- integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.22.5"
- regexpu-core "^5.3.1"
- semver "^6.3.1"
-
-"@babel/helper-define-polyfill-provider@^0.4.3":
- version "0.4.3"
- resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz#a71c10f7146d809f4a256c373f462d9bba8cf6ba"
- integrity sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==
- dependencies:
- "@babel/helper-compilation-targets" "^7.22.6"
- "@babel/helper-plugin-utils" "^7.22.5"
- debug "^4.1.1"
- lodash.debounce "^4.0.8"
- resolve "^1.14.2"
-
-"@babel/helper-environment-visitor@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz#0c0cee9b35d2ca190478756865bb3528422f51be"
- integrity sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==
-
-"@babel/helper-environment-visitor@^7.22.20", "@babel/helper-environment-visitor@^7.22.5":
- version "7.22.20"
- resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167"
- integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==
-
-"@babel/helper-function-name@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.18.9.tgz#940e6084a55dee867d33b4e487da2676365e86b0"
- integrity sha512-fJgWlZt7nxGksJS9a0XdSaI4XvpExnNIgRP+rVefWh5U7BL8pPuir6SJUmFKRfjWQ51OtWSzwOxhaH/EBWWc0A==
- dependencies:
- "@babel/template" "^7.18.6"
- "@babel/types" "^7.18.9"
-
-"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759"
- integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==
- dependencies:
- "@babel/template" "^7.22.15"
- "@babel/types" "^7.23.0"
-
-"@babel/helper-hoist-variables@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz#d4d2c8fb4baeaa5c68b99cc8245c56554f926678"
- integrity sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-hoist-variables@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb"
- integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==
- dependencies:
- "@babel/types" "^7.22.5"
-
-"@babel/helper-member-expression-to-functions@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz#1531661e8375af843ad37ac692c132841e2fd815"
- integrity sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==
- dependencies:
- "@babel/types" "^7.18.9"
-
-"@babel/helper-member-expression-to-functions@^7.22.15":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366"
- integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==
- dependencies:
- "@babel/types" "^7.23.0"
-
-"@babel/helper-module-imports@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz#1e3ebdbbd08aad1437b428c50204db13c5a3ca6e"
- integrity sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-module-imports@^7.22.15", "@babel/helper-module-imports@^7.22.5":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0"
- integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==
- dependencies:
- "@babel/types" "^7.22.15"
-
-"@babel/helper-module-transforms@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.18.9.tgz#5a1079c005135ed627442df31a42887e80fcb712"
- integrity sha512-KYNqY0ICwfv19b31XzvmI/mfcylOzbLtowkw+mfvGPAQ3kfCnMLYbED3YecL5tPd8nAYFQFAd6JHp2LxZk/J1g==
- dependencies:
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-module-imports" "^7.18.6"
- "@babel/helper-simple-access" "^7.18.6"
- "@babel/helper-split-export-declaration" "^7.18.6"
- "@babel/helper-validator-identifier" "^7.18.6"
- "@babel/template" "^7.18.6"
- "@babel/traverse" "^7.18.9"
- "@babel/types" "^7.18.9"
-
-"@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz#3ec246457f6c842c0aee62a01f60739906f7047e"
- integrity sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==
- dependencies:
- "@babel/helper-environment-visitor" "^7.22.20"
- "@babel/helper-module-imports" "^7.22.15"
- "@babel/helper-simple-access" "^7.22.5"
- "@babel/helper-split-export-declaration" "^7.22.6"
- "@babel/helper-validator-identifier" "^7.22.20"
-
-"@babel/helper-optimise-call-expression@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz#9369aa943ee7da47edab2cb4e838acf09d290ffe"
- integrity sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-optimise-call-expression@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e"
- integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==
- dependencies:
- "@babel/types" "^7.22.5"
-
-"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.18.9.tgz#4b8aea3b069d8cb8a72cdfe28ddf5ceca695ef2f"
- integrity sha512-aBXPT3bmtLryXaoJLyYPXPlSD4p1ld9aYeR+sJNOZjJJGiOpb+fKfh3NkcCu7J54nUJwCERPBExCCpyCOHnu/w==
-
-"@babel/helper-plugin-utils@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295"
- integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==
-
-"@babel/helper-remap-async-to-generator@^7.22.20", "@babel/helper-remap-async-to-generator@^7.22.5":
- version "7.22.20"
- resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0"
- integrity sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.22.5"
- "@babel/helper-environment-visitor" "^7.22.20"
- "@babel/helper-wrap-function" "^7.22.20"
-
-"@babel/helper-replace-supers@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.18.9.tgz#1092e002feca980fbbb0bd4d51b74a65c6a500e6"
- integrity sha512-dNsWibVI4lNT6HiuOIBr1oyxo40HvIVmbwPUm3XZ7wMh4k2WxrxTqZwSqw/eEmXDS9np0ey5M2bz9tBmO9c+YQ==
- dependencies:
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-member-expression-to-functions" "^7.18.9"
- "@babel/helper-optimise-call-expression" "^7.18.6"
- "@babel/traverse" "^7.18.9"
- "@babel/types" "^7.18.9"
-
-"@babel/helper-replace-supers@^7.22.5", "@babel/helper-replace-supers@^7.22.9":
- version "7.22.20"
- resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793"
- integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==
- dependencies:
- "@babel/helper-environment-visitor" "^7.22.20"
- "@babel/helper-member-expression-to-functions" "^7.22.15"
- "@babel/helper-optimise-call-expression" "^7.22.5"
-
-"@babel/helper-simple-access@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz#d6d8f51f4ac2978068df934b569f08f29788c7ea"
- integrity sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-simple-access@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de"
- integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==
- dependencies:
- "@babel/types" "^7.22.5"
-
-"@babel/helper-skip-transparent-expression-wrappers@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847"
- integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==
- dependencies:
- "@babel/types" "^7.22.5"
-
-"@babel/helper-split-export-declaration@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz#7367949bc75b20c6d5a5d4a97bba2824ae8ef075"
- integrity sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==
- dependencies:
- "@babel/types" "^7.18.6"
-
-"@babel/helper-split-export-declaration@^7.22.6":
- version "7.22.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c"
- integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==
- dependencies:
- "@babel/types" "^7.22.5"
-
-"@babel/helper-string-parser@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f"
- integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==
-
-"@babel/helper-validator-identifier@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz#9c97e30d31b2b8c72a1d08984f2ca9b574d7a076"
- integrity sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==
-
-"@babel/helper-validator-identifier@^7.22.20":
- version "7.22.20"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0"
- integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==
-
-"@babel/helper-validator-option@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz#bf0d2b5a509b1f336099e4ff36e1a63aa5db4db8"
- integrity sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==
-
-"@babel/helper-validator-option@^7.22.15":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040"
- integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==
-
-"@babel/helper-wrap-function@^7.22.20":
- version "7.22.20"
- resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569"
- integrity sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==
- dependencies:
- "@babel/helper-function-name" "^7.22.5"
- "@babel/template" "^7.22.15"
- "@babel/types" "^7.22.19"
-
-"@babel/helpers@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.18.9.tgz#4bef3b893f253a1eced04516824ede94dcfe7ff9"
- integrity sha512-Jf5a+rbrLoR4eNdUmnFu8cN5eNJT6qdTdOg5IHIzq87WwyRw9PwguLFOWYgktN/60IP4fgDUawJvs7PjQIzELQ==
- dependencies:
- "@babel/template" "^7.18.6"
- "@babel/traverse" "^7.18.9"
- "@babel/types" "^7.18.9"
-
-"@babel/helpers@^7.23.2":
- version "7.23.2"
- resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.2.tgz#2832549a6e37d484286e15ba36a5330483cac767"
- integrity sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==
- dependencies:
- "@babel/template" "^7.22.15"
- "@babel/traverse" "^7.23.2"
- "@babel/types" "^7.23.0"
-
-"@babel/highlight@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf"
- integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==
- dependencies:
- "@babel/helper-validator-identifier" "^7.18.6"
- chalk "^2.0.0"
- js-tokens "^4.0.0"
-
-"@babel/highlight@^7.22.13":
- version "7.22.20"
- resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54"
- integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==
- dependencies:
- "@babel/helper-validator-identifier" "^7.22.20"
- chalk "^2.4.2"
- js-tokens "^4.0.0"
-
-"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.6", "@babel/parser@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.9.tgz#f2dde0c682ccc264a9a8595efd030a5cc8fd2539"
- integrity sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==
-
-"@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719"
- integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==
-
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.15":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz#02dc8a03f613ed5fdc29fb2f728397c78146c962"
- integrity sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.22.15":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.15.tgz#2aeb91d337d4e1a1e7ce85b76a37f5301781200f"
- integrity sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
- "@babel/plugin-transform-optional-chaining" "^7.22.15"
-
-"@babel/plugin-proposal-class-properties@^7.14.5":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3"
- integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
-
-"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2":
- version "7.21.0-placeholder-for-preset-env.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703"
- integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==
-
-"@babel/plugin-syntax-async-generators@^7.8.4":
- version "7.8.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d"
- integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-bigint@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea"
- integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3":
- version "7.12.13"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10"
- integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.12.13"
-
-"@babel/plugin-syntax-class-static-block@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406"
- integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-dynamic-import@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3"
- integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-export-namespace-from@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a"
- integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.3"
-
-"@babel/plugin-syntax-flow@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.22.5.tgz#163b820b9e7696ce134df3ee716d9c0c98035859"
- integrity sha512-9RdCl0i+q0QExayk2nOS7853w08yLucnnPML6EN9S8fgMPVtdLDCdx/cOQ/i44Lb9UeQX9A35yaqBBOMMZxPxQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-syntax-import-assertions@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz#07d252e2aa0bc6125567f742cd58619cb14dce98"
- integrity sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-syntax-import-attributes@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz#ab840248d834410b829f569f5262b9e517555ecb"
- integrity sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51"
- integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-json-strings@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a"
- integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-jsx@^7.7.2":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918"
- integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699"
- integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9"
- integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3":
- version "7.10.4"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97"
- integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==
- dependencies:
- "@babel/helper-plugin-utils" "^7.10.4"
-
-"@babel/plugin-syntax-object-rest-spread@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871"
- integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-optional-catch-binding@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1"
- integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-optional-chaining@^7.8.3":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a"
- integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.8.0"
-
-"@babel/plugin-syntax-private-property-in-object@^7.14.5":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad"
- integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3":
- version "7.14.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c"
- integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.14.5"
-
-"@babel/plugin-syntax-typescript@^7.7.2":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz#aac8d383b062c5072c647a31ef990c1d0af90272"
- integrity sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357"
- integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.18.6"
- "@babel/helper-plugin-utils" "^7.18.6"
-
-"@babel/plugin-transform-arrow-functions@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz#e5ba566d0c58a5b2ba2a8b795450641950b71958"
- integrity sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-async-generator-functions@^7.23.2":
- version "7.23.2"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.2.tgz#054afe290d64c6f576f371ccc321772c8ea87ebb"
- integrity sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==
- dependencies:
- "@babel/helper-environment-visitor" "^7.22.20"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-remap-async-to-generator" "^7.22.20"
- "@babel/plugin-syntax-async-generators" "^7.8.4"
-
-"@babel/plugin-transform-async-to-generator@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz#c7a85f44e46f8952f6d27fe57c2ed3cc084c3775"
- integrity sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==
- dependencies:
- "@babel/helper-module-imports" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-remap-async-to-generator" "^7.22.5"
-
-"@babel/plugin-transform-block-scoped-functions@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz#27978075bfaeb9fa586d3cb63a3d30c1de580024"
- integrity sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-block-scoping@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.0.tgz#8744d02c6c264d82e1a4bc5d2d501fd8aff6f022"
- integrity sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-class-properties@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz#97a56e31ad8c9dc06a0b3710ce7803d5a48cca77"
- integrity sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-class-static-block@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz#dc8cc6e498f55692ac6b4b89e56d87cec766c974"
- integrity sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.22.11"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-class-static-block" "^7.14.5"
-
-"@babel/plugin-transform-classes@^7.22.15":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.15.tgz#aaf4753aee262a232bbc95451b4bdf9599c65a0b"
- integrity sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.22.5"
- "@babel/helper-compilation-targets" "^7.22.15"
- "@babel/helper-environment-visitor" "^7.22.5"
- "@babel/helper-function-name" "^7.22.5"
- "@babel/helper-optimise-call-expression" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-replace-supers" "^7.22.9"
- "@babel/helper-split-export-declaration" "^7.22.6"
- globals "^11.1.0"
-
-"@babel/plugin-transform-computed-properties@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz#cd1e994bf9f316bd1c2dafcd02063ec261bb3869"
- integrity sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/template" "^7.22.5"
-
-"@babel/plugin-transform-destructuring@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.0.tgz#6447aa686be48b32eaf65a73e0e2c0bd010a266c"
- integrity sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-dotall-regex@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz#dbb4f0e45766eb544e193fb00e65a1dd3b2a4165"
- integrity sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-duplicate-keys@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz#b6e6428d9416f5f0bba19c70d1e6e7e0b88ab285"
- integrity sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-dynamic-import@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz#2c7722d2a5c01839eaf31518c6ff96d408e447aa"
- integrity sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
-
-"@babel/plugin-transform-exponentiation-operator@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz#402432ad544a1f9a480da865fda26be653e48f6a"
- integrity sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==
- dependencies:
- "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-export-namespace-from@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz#b3c84c8f19880b6c7440108f8929caf6056db26c"
- integrity sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
-
-"@babel/plugin-transform-flow-strip-types@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.22.5.tgz#0bb17110c7bf5b35a60754b2f00c58302381dee2"
- integrity sha512-tujNbZdxdG0/54g/oua8ISToaXTFBf8EnSb5PgQSciIXWOWKX3S4+JR7ZE9ol8FZwf9kxitzkGQ+QWeov/mCiA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-flow" "^7.22.5"
-
-"@babel/plugin-transform-for-of@^7.22.15":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.15.tgz#f64b4ccc3a4f131a996388fae7680b472b306b29"
- integrity sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-function-name@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz#935189af68b01898e0d6d99658db6b164205c143"
- integrity sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==
- dependencies:
- "@babel/helper-compilation-targets" "^7.22.5"
- "@babel/helper-function-name" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-json-strings@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz#689a34e1eed1928a40954e37f74509f48af67835"
- integrity sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
-
-"@babel/plugin-transform-literals@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz#e9341f4b5a167952576e23db8d435849b1dd7920"
- integrity sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-logical-assignment-operators@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz#24c522a61688bde045b7d9bc3c2597a4d948fc9c"
- integrity sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
-
-"@babel/plugin-transform-member-expression-literals@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz#4fcc9050eded981a468347dd374539ed3e058def"
- integrity sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-modules-amd@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.0.tgz#05b2bc43373faa6d30ca89214731f76f966f3b88"
- integrity sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==
- dependencies:
- "@babel/helper-module-transforms" "^7.23.0"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-modules-commonjs@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.0.tgz#b3dba4757133b2762c00f4f94590cf6d52602481"
- integrity sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==
- dependencies:
- "@babel/helper-module-transforms" "^7.23.0"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-simple-access" "^7.22.5"
-
-"@babel/plugin-transform-modules-systemjs@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.0.tgz#77591e126f3ff4132a40595a6cccd00a6b60d160"
- integrity sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==
- dependencies:
- "@babel/helper-hoist-variables" "^7.22.5"
- "@babel/helper-module-transforms" "^7.23.0"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-validator-identifier" "^7.22.20"
-
-"@babel/plugin-transform-modules-umd@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz#4694ae40a87b1745e3775b6a7fe96400315d4f98"
- integrity sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==
- dependencies:
- "@babel/helper-module-transforms" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-named-capturing-groups-regex@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f"
- integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-new-target@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz#1b248acea54ce44ea06dfd37247ba089fcf9758d"
- integrity sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-nullish-coalescing-operator@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz#debef6c8ba795f5ac67cd861a81b744c5d38d9fc"
- integrity sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
-
-"@babel/plugin-transform-numeric-separator@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz#498d77dc45a6c6db74bb829c02a01c1d719cbfbd"
- integrity sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-numeric-separator" "^7.10.4"
-
-"@babel/plugin-transform-object-rest-spread@^7.22.15":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.15.tgz#21a95db166be59b91cde48775310c0df6e1da56f"
- integrity sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==
- dependencies:
- "@babel/compat-data" "^7.22.9"
- "@babel/helper-compilation-targets" "^7.22.15"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-transform-parameters" "^7.22.15"
-
-"@babel/plugin-transform-object-super@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz#794a8d2fcb5d0835af722173c1a9d704f44e218c"
- integrity sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-replace-supers" "^7.22.5"
-
-"@babel/plugin-transform-optional-catch-binding@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz#461cc4f578a127bb055527b3e77404cad38c08e0"
- integrity sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
-
-"@babel/plugin-transform-optional-chaining@^7.22.15", "@babel/plugin-transform-optional-chaining@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.0.tgz#73ff5fc1cf98f542f09f29c0631647d8ad0be158"
- integrity sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
-
-"@babel/plugin-transform-parameters@^7.22.15":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz#719ca82a01d177af358df64a514d64c2e3edb114"
- integrity sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-private-methods@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz#21c8af791f76674420a147ae62e9935d790f8722"
- integrity sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==
- dependencies:
- "@babel/helper-create-class-features-plugin" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-private-property-in-object@^7.22.11":
- version "7.22.11"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz#ad45c4fc440e9cb84c718ed0906d96cf40f9a4e1"
- integrity sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==
- dependencies:
- "@babel/helper-annotate-as-pure" "^7.22.5"
- "@babel/helper-create-class-features-plugin" "^7.22.11"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
-
-"@babel/plugin-transform-property-literals@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz#b5ddabd73a4f7f26cd0e20f5db48290b88732766"
- integrity sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-regenerator@^7.22.10":
- version "7.22.10"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.10.tgz#8ceef3bd7375c4db7652878b0241b2be5d0c3cca"
- integrity sha512-F28b1mDt8KcT5bUyJc/U9nwzw6cV+UmTeRlXYIl2TNqMMJif0Jeey9/RQ3C4NOd2zp0/TRsDns9ttj2L523rsw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- regenerator-transform "^0.15.2"
-
-"@babel/plugin-transform-reserved-words@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz#832cd35b81c287c4bcd09ce03e22199641f964fb"
- integrity sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-shorthand-properties@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz#6e277654be82b5559fc4b9f58088507c24f0c624"
- integrity sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-spread@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz#6487fd29f229c95e284ba6c98d65eafb893fea6b"
- integrity sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5"
-
-"@babel/plugin-transform-sticky-regex@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz#295aba1595bfc8197abd02eae5fc288c0deb26aa"
- integrity sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-template-literals@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz#8f38cf291e5f7a8e60e9f733193f0bcc10909bff"
- integrity sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-typeof-symbol@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz#5e2ba478da4b603af8673ff7c54f75a97b716b34"
- integrity sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-escapes@^7.22.10":
- version "7.22.10"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz#c723f380f40a2b2f57a62df24c9005834c8616d9"
- integrity sha512-lRfaRKGZCBqDlRU3UIFovdp9c9mEvlylmpod0/OatICsSfuQ9YFthRo1tpTkGsklEefZdqlEFdY4A2dwTb6ohg==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-property-regex@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz#098898f74d5c1e86660dc112057b2d11227f1c81"
- integrity sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-regex@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz#ce7e7bb3ef208c4ff67e02a22816656256d7a183"
- integrity sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/plugin-transform-unicode-sets-regex@^7.22.5":
- version "7.22.5"
- resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz#77788060e511b708ffc7d42fdfbc5b37c3004e91"
- integrity sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==
- dependencies:
- "@babel/helper-create-regexp-features-plugin" "^7.22.5"
- "@babel/helper-plugin-utils" "^7.22.5"
-
-"@babel/preset-env@^7.22.7":
- version "7.23.2"
- resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.23.2.tgz#1f22be0ff0e121113260337dbc3e58fafce8d059"
- integrity sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==
- dependencies:
- "@babel/compat-data" "^7.23.2"
- "@babel/helper-compilation-targets" "^7.22.15"
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-validator-option" "^7.22.15"
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.22.15"
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.22.15"
- "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2"
- "@babel/plugin-syntax-async-generators" "^7.8.4"
- "@babel/plugin-syntax-class-properties" "^7.12.13"
- "@babel/plugin-syntax-class-static-block" "^7.14.5"
- "@babel/plugin-syntax-dynamic-import" "^7.8.3"
- "@babel/plugin-syntax-export-namespace-from" "^7.8.3"
- "@babel/plugin-syntax-import-assertions" "^7.22.5"
- "@babel/plugin-syntax-import-attributes" "^7.22.5"
- "@babel/plugin-syntax-import-meta" "^7.10.4"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
- "@babel/plugin-syntax-numeric-separator" "^7.10.4"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
- "@babel/plugin-syntax-private-property-in-object" "^7.14.5"
- "@babel/plugin-syntax-top-level-await" "^7.14.5"
- "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6"
- "@babel/plugin-transform-arrow-functions" "^7.22.5"
- "@babel/plugin-transform-async-generator-functions" "^7.23.2"
- "@babel/plugin-transform-async-to-generator" "^7.22.5"
- "@babel/plugin-transform-block-scoped-functions" "^7.22.5"
- "@babel/plugin-transform-block-scoping" "^7.23.0"
- "@babel/plugin-transform-class-properties" "^7.22.5"
- "@babel/plugin-transform-class-static-block" "^7.22.11"
- "@babel/plugin-transform-classes" "^7.22.15"
- "@babel/plugin-transform-computed-properties" "^7.22.5"
- "@babel/plugin-transform-destructuring" "^7.23.0"
- "@babel/plugin-transform-dotall-regex" "^7.22.5"
- "@babel/plugin-transform-duplicate-keys" "^7.22.5"
- "@babel/plugin-transform-dynamic-import" "^7.22.11"
- "@babel/plugin-transform-exponentiation-operator" "^7.22.5"
- "@babel/plugin-transform-export-namespace-from" "^7.22.11"
- "@babel/plugin-transform-for-of" "^7.22.15"
- "@babel/plugin-transform-function-name" "^7.22.5"
- "@babel/plugin-transform-json-strings" "^7.22.11"
- "@babel/plugin-transform-literals" "^7.22.5"
- "@babel/plugin-transform-logical-assignment-operators" "^7.22.11"
- "@babel/plugin-transform-member-expression-literals" "^7.22.5"
- "@babel/plugin-transform-modules-amd" "^7.23.0"
- "@babel/plugin-transform-modules-commonjs" "^7.23.0"
- "@babel/plugin-transform-modules-systemjs" "^7.23.0"
- "@babel/plugin-transform-modules-umd" "^7.22.5"
- "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5"
- "@babel/plugin-transform-new-target" "^7.22.5"
- "@babel/plugin-transform-nullish-coalescing-operator" "^7.22.11"
- "@babel/plugin-transform-numeric-separator" "^7.22.11"
- "@babel/plugin-transform-object-rest-spread" "^7.22.15"
- "@babel/plugin-transform-object-super" "^7.22.5"
- "@babel/plugin-transform-optional-catch-binding" "^7.22.11"
- "@babel/plugin-transform-optional-chaining" "^7.23.0"
- "@babel/plugin-transform-parameters" "^7.22.15"
- "@babel/plugin-transform-private-methods" "^7.22.5"
- "@babel/plugin-transform-private-property-in-object" "^7.22.11"
- "@babel/plugin-transform-property-literals" "^7.22.5"
- "@babel/plugin-transform-regenerator" "^7.22.10"
- "@babel/plugin-transform-reserved-words" "^7.22.5"
- "@babel/plugin-transform-shorthand-properties" "^7.22.5"
- "@babel/plugin-transform-spread" "^7.22.5"
- "@babel/plugin-transform-sticky-regex" "^7.22.5"
- "@babel/plugin-transform-template-literals" "^7.22.5"
- "@babel/plugin-transform-typeof-symbol" "^7.22.5"
- "@babel/plugin-transform-unicode-escapes" "^7.22.10"
- "@babel/plugin-transform-unicode-property-regex" "^7.22.5"
- "@babel/plugin-transform-unicode-regex" "^7.22.5"
- "@babel/plugin-transform-unicode-sets-regex" "^7.22.5"
- "@babel/preset-modules" "0.1.6-no-external-plugins"
- "@babel/types" "^7.23.0"
- babel-plugin-polyfill-corejs2 "^0.4.6"
- babel-plugin-polyfill-corejs3 "^0.8.5"
- babel-plugin-polyfill-regenerator "^0.5.3"
- core-js-compat "^3.31.0"
- semver "^6.3.1"
-
-"@babel/preset-flow@^7.22.5":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.22.15.tgz#30318deb9b3ebd9f5738e96da03a531e0cd3165d"
- integrity sha512-dB5aIMqpkgbTfN5vDdTRPzjqtWiZcRESNR88QYnoPR+bmdYoluOzMX9tQerTv0XzSgZYctPfO1oc0N5zdog1ew==
- dependencies:
- "@babel/helper-plugin-utils" "^7.22.5"
- "@babel/helper-validator-option" "^7.22.15"
- "@babel/plugin-transform-flow-strip-types" "^7.22.5"
-
-"@babel/preset-modules@0.1.6-no-external-plugins":
- version "0.1.6-no-external-plugins"
- resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a"
- integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@babel/types" "^7.4.4"
- esutils "^2.0.2"
-
-"@babel/preset-stage-0@^7.0.0":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/preset-stage-0/-/preset-stage-0-7.8.3.tgz#b6a0eca1a3b72e07f9caf58f998e97568028f6f5"
- integrity sha512-+l6FlG1j73t4wh78W41StbcCz0/9a1/y+vxfnjtHl060kSmcgMfGzK9MEkLvrCOXfhp9RCX+d88sm6rOqxEIEQ==
-
-"@babel/register@^7.22.5":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.22.15.tgz#c2c294a361d59f5fa7bcc8b97ef7319c32ecaec7"
- integrity sha512-V3Q3EqoQdn65RCgTLwauZaTfd1ShhwPmbBv+1dkZV/HpCGMKVyn6oFcRlI7RaKqiDQjX2Qd3AuoEguBgdjIKlg==
- dependencies:
- clone-deep "^4.0.1"
- find-cache-dir "^2.0.0"
- make-dir "^2.1.0"
- pirates "^4.0.5"
- source-map-support "^0.5.16"
-
-"@babel/regjsgen@^0.8.0":
- version "0.8.0"
- resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310"
- integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==
-
-"@babel/runtime@^7.15.4", "@babel/runtime@^7.8.4":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.18.9.tgz#b4fcfce55db3d2e5e080d2490f608a3b9f407f4a"
- integrity sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==
- dependencies:
- regenerator-runtime "^0.13.4"
-
-"@babel/template@^7.18.6", "@babel/template@^7.3.3":
- version "7.18.6"
- resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.6.tgz#1283f4993e00b929d6e2d3c72fdc9168a2977a31"
- integrity sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==
- dependencies:
- "@babel/code-frame" "^7.18.6"
- "@babel/parser" "^7.18.6"
- "@babel/types" "^7.18.6"
-
-"@babel/template@^7.22.15", "@babel/template@^7.22.5":
- version "7.22.15"
- resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38"
- integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==
- dependencies:
- "@babel/code-frame" "^7.22.13"
- "@babel/parser" "^7.22.15"
- "@babel/types" "^7.22.15"
-
-"@babel/traverse@^7.18.9":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.18.9.tgz#deeff3e8f1bad9786874cb2feda7a2d77a904f98"
- integrity sha512-LcPAnujXGwBgv3/WHv01pHtb2tihcyW1XuL9wd7jqh1Z8AQkTd+QVjMrMijrln0T7ED3UXLIy36P9Ao7W75rYg==
- dependencies:
- "@babel/code-frame" "^7.18.6"
- "@babel/generator" "^7.18.9"
- "@babel/helper-environment-visitor" "^7.18.9"
- "@babel/helper-function-name" "^7.18.9"
- "@babel/helper-hoist-variables" "^7.18.6"
- "@babel/helper-split-export-declaration" "^7.18.6"
- "@babel/parser" "^7.18.9"
- "@babel/types" "^7.18.9"
- debug "^4.1.0"
- globals "^11.1.0"
-
-"@babel/traverse@^7.23.2":
- version "7.23.2"
- resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8"
- integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==
- dependencies:
- "@babel/code-frame" "^7.22.13"
- "@babel/generator" "^7.23.0"
- "@babel/helper-environment-visitor" "^7.22.20"
- "@babel/helper-function-name" "^7.23.0"
- "@babel/helper-hoist-variables" "^7.22.5"
- "@babel/helper-split-export-declaration" "^7.22.6"
- "@babel/parser" "^7.23.0"
- "@babel/types" "^7.23.0"
- debug "^4.1.0"
- globals "^11.1.0"
-
-"@babel/types@^7.0.0", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4":
- version "7.18.9"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.18.9.tgz#7148d64ba133d8d73a41b3172ac4b83a1452205f"
- integrity sha512-WwMLAg2MvJmt/rKEVQBBhIVffMmnilX4oe0sRe7iPOHIGsqpruFHHdrfj4O1CMMtgMtCU4oPafZjDPCRgO57Wg==
- dependencies:
- "@babel/helper-validator-identifier" "^7.18.6"
- to-fast-properties "^2.0.0"
-
-"@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0":
- version "7.23.0"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb"
- integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==
- dependencies:
- "@babel/helper-string-parser" "^7.22.5"
- "@babel/helper-validator-identifier" "^7.22.20"
- to-fast-properties "^2.0.0"
-
-"@bcoe/v8-coverage@^0.2.3":
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
- integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
-
-"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449"
- integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==
- dependencies:
- "@ethersproject/address" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/constants" "^5.7.0"
- "@ethersproject/hash" "^5.7.0"
- "@ethersproject/keccak256" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
-
-"@ethersproject/abi@^5.5.0":
- version "5.6.4"
- resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.6.4.tgz#f6e01b6ed391a505932698ecc0d9e7a99ee60362"
- integrity sha512-TTeZUlCeIHG6527/2goZA6gW5F8Emoc7MrZDC7hhP84aRGvW3TEdTnZR08Ls88YXM1m2SuK42Osw/jSi3uO8gg==
- dependencies:
- "@ethersproject/address" "^5.6.1"
- "@ethersproject/bignumber" "^5.6.2"
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/constants" "^5.6.1"
- "@ethersproject/hash" "^5.6.1"
- "@ethersproject/keccak256" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/properties" "^5.6.0"
- "@ethersproject/strings" "^5.6.1"
-
-"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef"
- integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==
- dependencies:
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/networks" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/transactions" "^5.7.0"
- "@ethersproject/web" "^5.7.0"
-
-"@ethersproject/abstract-provider@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.6.1.tgz#02ddce150785caf0c77fe036a0ebfcee61878c59"
- integrity sha512-BxlIgogYJtp1FS8Muvj8YfdClk3unZH0vRMVX791Z9INBNT/kuACZ9GzaY1Y4yFq+YSy6/w4gzj3HCRKrK9hsQ==
- dependencies:
- "@ethersproject/bignumber" "^5.6.2"
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/networks" "^5.6.3"
- "@ethersproject/properties" "^5.6.0"
- "@ethersproject/transactions" "^5.6.2"
- "@ethersproject/web" "^5.6.1"
-
-"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2"
- integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==
- dependencies:
- "@ethersproject/abstract-provider" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
-
-"@ethersproject/abstract-signer@^5.6.2":
- version "5.6.2"
- resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.6.2.tgz#491f07fc2cbd5da258f46ec539664713950b0b33"
- integrity sha512-n1r6lttFBG0t2vNiI3HoWaS/KdOt8xyDjzlP2cuevlWLG6EX0OwcKLyG/Kp/cuwNxdy/ous+R/DEMdTUwWQIjQ==
- dependencies:
- "@ethersproject/abstract-provider" "^5.6.1"
- "@ethersproject/bignumber" "^5.6.2"
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/properties" "^5.6.0"
-
-"@ethersproject/address@5.7.0", "@ethersproject/address@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37"
- integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==
- dependencies:
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/keccak256" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/rlp" "^5.7.0"
-
-"@ethersproject/address@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.6.1.tgz#ab57818d9aefee919c5721d28cd31fd95eff413d"
- integrity sha512-uOgF0kS5MJv9ZvCz7x6T2EXJSzotiybApn4XlOgoTX0xdtyVIJ7pF+6cGPxiEq/dpBiTfMiw7Yc81JcwhSYA0Q==
- dependencies:
- "@ethersproject/bignumber" "^5.6.2"
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/keccak256" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/rlp" "^5.6.1"
-
-"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c"
- integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
-
-"@ethersproject/base64@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.6.1.tgz#2c40d8a0310c9d1606c2c37ae3092634b41d87cb"
- integrity sha512-qB76rjop6a0RIYYMiB4Eh/8n+Hxu2NIZm8S/Q7kNo5pmZfXhHGHmS4MinUainiBC54SCyRnwzL+KZjj8zbsSsw==
- dependencies:
- "@ethersproject/bytes" "^5.6.1"
-
-"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b"
- integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
-
-"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2"
- integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- bn.js "^5.2.1"
-
-"@ethersproject/bignumber@^5.6.2":
- version "5.6.2"
- resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.6.2.tgz#72a0717d6163fab44c47bcc82e0c550ac0315d66"
- integrity sha512-v7+EEUbhGqT3XJ9LMPsKvXYHFc8eHxTowFCG/HgJErmq4XHJ2WR7aeyICg3uTOAQ7Icn0GFHAohXEhxQHq4Ubw==
- dependencies:
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- bn.js "^5.2.1"
-
-"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d"
- integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==
- dependencies:
- "@ethersproject/logger" "^5.7.0"
-
-"@ethersproject/bytes@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.6.1.tgz#24f916e411f82a8a60412344bf4a813b917eefe7"
- integrity sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==
- dependencies:
- "@ethersproject/logger" "^5.6.0"
-
-"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e"
- integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==
- dependencies:
- "@ethersproject/bignumber" "^5.7.0"
-
-"@ethersproject/constants@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.6.1.tgz#e2e974cac160dd101cf79fdf879d7d18e8cb1370"
- integrity sha512-QSq9WVnZbxXYFftrjSjZDUshp6/eKp6qrtdBtUCm0QxCV5z1fG/w3kdlcsjMCQuQHUnAclKoK7XpXMezhRDOLg==
- dependencies:
- "@ethersproject/bignumber" "^5.6.2"
-
-"@ethersproject/contracts@5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e"
- integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==
- dependencies:
- "@ethersproject/abi" "^5.7.0"
- "@ethersproject/abstract-provider" "^5.7.0"
- "@ethersproject/abstract-signer" "^5.7.0"
- "@ethersproject/address" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/constants" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/transactions" "^5.7.0"
-
-"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7"
- integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==
- dependencies:
- "@ethersproject/abstract-signer" "^5.7.0"
- "@ethersproject/address" "^5.7.0"
- "@ethersproject/base64" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/keccak256" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
-
-"@ethersproject/hash@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.6.1.tgz#224572ea4de257f05b4abf8ae58b03a67e99b0f4"
- integrity sha512-L1xAHurbaxG8VVul4ankNX5HgQ8PNCTrnVXEiFnE9xoRnaUcgfD12tZINtDinSllxPLCtGwguQxJ5E6keE84pA==
- dependencies:
- "@ethersproject/abstract-signer" "^5.6.2"
- "@ethersproject/address" "^5.6.1"
- "@ethersproject/bignumber" "^5.6.2"
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/keccak256" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/properties" "^5.6.0"
- "@ethersproject/strings" "^5.6.1"
-
-"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf"
- integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==
- dependencies:
- "@ethersproject/abstract-signer" "^5.7.0"
- "@ethersproject/basex" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/pbkdf2" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/sha2" "^5.7.0"
- "@ethersproject/signing-key" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
- "@ethersproject/transactions" "^5.7.0"
- "@ethersproject/wordlists" "^5.7.0"
-
-"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360"
- integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==
- dependencies:
- "@ethersproject/abstract-signer" "^5.7.0"
- "@ethersproject/address" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/hdnode" "^5.7.0"
- "@ethersproject/keccak256" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/pbkdf2" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/random" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
- "@ethersproject/transactions" "^5.7.0"
- aes-js "3.0.0"
- scrypt-js "3.0.1"
-
-"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a"
- integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- js-sha3 "0.8.0"
-
-"@ethersproject/keccak256@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.6.1.tgz#b867167c9b50ba1b1a92bccdd4f2d6bd168a91cc"
- integrity sha512-bB7DQHCTRDooZZdL3lk9wpL0+XuG3XLGHLh3cePnybsO3V0rdCAOQGpn/0R3aODmnTOOkCATJiD2hnL+5bwthA==
- dependencies:
- "@ethersproject/bytes" "^5.6.1"
- js-sha3 "0.8.0"
-
-"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892"
- integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==
-
-"@ethersproject/logger@^5.6.0":
- version "5.6.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.6.0.tgz#d7db1bfcc22fd2e4ab574cba0bb6ad779a9a3e7a"
- integrity sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==
-
-"@ethersproject/networks@5.7.1", "@ethersproject/networks@^5.7.0":
- version "5.7.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6"
- integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==
- dependencies:
- "@ethersproject/logger" "^5.7.0"
-
-"@ethersproject/networks@^5.6.3":
- version "5.6.4"
- resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.6.4.tgz#51296d8fec59e9627554f5a8a9c7791248c8dc07"
- integrity sha512-KShHeHPahHI2UlWdtDMn2lJETcbtaJge4k7XSjDR9h79QTd6yQJmv6Cp2ZA4JdqWnhszAOLSuJEd9C0PRw7hSQ==
- dependencies:
- "@ethersproject/logger" "^5.6.0"
-
-"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102"
- integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/sha2" "^5.7.0"
-
-"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30"
- integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==
- dependencies:
- "@ethersproject/logger" "^5.7.0"
-
-"@ethersproject/properties@^5.6.0":
- version "5.6.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.6.0.tgz#38904651713bc6bdd5bdd1b0a4287ecda920fa04"
- integrity sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg==
- dependencies:
- "@ethersproject/logger" "^5.6.0"
-
-"@ethersproject/providers@5.7.2":
- version "5.7.2"
- resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.2.tgz#f8b1a4f275d7ce58cf0a2eec222269a08beb18cb"
- integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==
- dependencies:
- "@ethersproject/abstract-provider" "^5.7.0"
- "@ethersproject/abstract-signer" "^5.7.0"
- "@ethersproject/address" "^5.7.0"
- "@ethersproject/base64" "^5.7.0"
- "@ethersproject/basex" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/constants" "^5.7.0"
- "@ethersproject/hash" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/networks" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/random" "^5.7.0"
- "@ethersproject/rlp" "^5.7.0"
- "@ethersproject/sha2" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
- "@ethersproject/transactions" "^5.7.0"
- "@ethersproject/web" "^5.7.0"
- bech32 "1.1.4"
- ws "7.4.6"
-
-"@ethersproject/random@5.7.0", "@ethersproject/random@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c"
- integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
-
-"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304"
- integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
-
-"@ethersproject/rlp@^5.5.0", "@ethersproject/rlp@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.6.1.tgz#df8311e6f9f24dcb03d59a2bac457a28a4fe2bd8"
- integrity sha512-uYjmcZx+DKlFUk7a5/W9aQVaoEC7+1MOBgNtvNg13+RnuUwT4F0zTovC0tmay5SmRslb29V1B7Y5KCri46WhuQ==
- dependencies:
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
-
-"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb"
- integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- hash.js "1.1.7"
-
-"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3"
- integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- bn.js "^5.2.1"
- elliptic "6.5.4"
- hash.js "1.1.7"
-
-"@ethersproject/signing-key@^5.6.2":
- version "5.6.2"
- resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.6.2.tgz#8a51b111e4d62e5a62aee1da1e088d12de0614a3"
- integrity sha512-jVbu0RuP7EFpw82vHcL+GP35+KaNruVAZM90GxgQnGqB6crhBqW/ozBfFvdeImtmb4qPko0uxXjn8l9jpn0cwQ==
- dependencies:
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/properties" "^5.6.0"
- bn.js "^5.2.1"
- elliptic "6.5.4"
- hash.js "1.1.7"
-
-"@ethersproject/solidity@5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8"
- integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==
- dependencies:
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/keccak256" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/sha2" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
-
-"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2"
- integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/constants" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
-
-"@ethersproject/strings@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.6.1.tgz#dbc1b7f901db822b5cafd4ebf01ca93c373f8952"
- integrity sha512-2X1Lgk6Jyfg26MUnsHiT456U9ijxKUybz8IM1Vih+NJxYtXhmvKBcHOmvGqpFSVJ0nQ4ZCoIViR8XlRw1v/+Cw==
- dependencies:
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/constants" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
-
-"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b"
- integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==
- dependencies:
- "@ethersproject/address" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/constants" "^5.7.0"
- "@ethersproject/keccak256" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/rlp" "^5.7.0"
- "@ethersproject/signing-key" "^5.7.0"
-
-"@ethersproject/transactions@^5.6.2":
- version "5.6.2"
- resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.6.2.tgz#793a774c01ced9fe7073985bb95a4b4e57a6370b"
- integrity sha512-BuV63IRPHmJvthNkkt9G70Ullx6AcM+SDc+a8Aw/8Yew6YwT51TcBKEp1P4oOQ/bP25I18JJr7rcFRgFtU9B2Q==
- dependencies:
- "@ethersproject/address" "^5.6.1"
- "@ethersproject/bignumber" "^5.6.2"
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/constants" "^5.6.1"
- "@ethersproject/keccak256" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/properties" "^5.6.0"
- "@ethersproject/rlp" "^5.6.1"
- "@ethersproject/signing-key" "^5.6.2"
-
-"@ethersproject/units@5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1"
- integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==
- dependencies:
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/constants" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
-
-"@ethersproject/wallet@5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d"
- integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==
- dependencies:
- "@ethersproject/abstract-provider" "^5.7.0"
- "@ethersproject/abstract-signer" "^5.7.0"
- "@ethersproject/address" "^5.7.0"
- "@ethersproject/bignumber" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/hash" "^5.7.0"
- "@ethersproject/hdnode" "^5.7.0"
- "@ethersproject/json-wallets" "^5.7.0"
- "@ethersproject/keccak256" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/random" "^5.7.0"
- "@ethersproject/signing-key" "^5.7.0"
- "@ethersproject/transactions" "^5.7.0"
- "@ethersproject/wordlists" "^5.7.0"
-
-"@ethersproject/web@5.7.1", "@ethersproject/web@^5.7.0":
- version "5.7.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae"
- integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==
- dependencies:
- "@ethersproject/base64" "^5.7.0"
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
-
-"@ethersproject/web@^5.6.1":
- version "5.6.1"
- resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.6.1.tgz#6e2bd3ebadd033e6fe57d072db2b69ad2c9bdf5d"
- integrity sha512-/vSyzaQlNXkO1WV+RneYKqCJwualcUdx/Z3gseVovZP0wIlOFcCE1hkRhKBH8ImKbGQbMl9EAAyJFrJu7V0aqA==
- dependencies:
- "@ethersproject/base64" "^5.6.1"
- "@ethersproject/bytes" "^5.6.1"
- "@ethersproject/logger" "^5.6.0"
- "@ethersproject/properties" "^5.6.0"
- "@ethersproject/strings" "^5.6.1"
-
-"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.7.0":
- version "5.7.0"
- resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5"
- integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==
- dependencies:
- "@ethersproject/bytes" "^5.7.0"
- "@ethersproject/hash" "^5.7.0"
- "@ethersproject/logger" "^5.7.0"
- "@ethersproject/properties" "^5.7.0"
- "@ethersproject/strings" "^5.7.0"
-
-"@grpc/grpc-js@^1.8.15":
- version "1.9.6"
- resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.9.6.tgz#c64a2db3cb1c73939d3d666fb1339775813c1cd8"
- integrity sha512-yq3qTy23u++8zdvf+h4mz4ohDFi681JAkMZZPTKh8zmUVh0AKLisFlgxcn22FMNowXz15oJ6pqgwT7DJ+PdJvg==
- dependencies:
- "@grpc/proto-loader" "^0.7.8"
- "@types/node" ">=12.12.47"
-
-"@grpc/proto-loader@^0.7.5", "@grpc/proto-loader@^0.7.8":
- version "0.7.10"
- resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.10.tgz#6bf26742b1b54d0a473067743da5d3189d06d720"
- integrity sha512-CAqDfoaQ8ykFd9zqBDn4k6iWT9loLAlc2ETmDFS9JCD70gDcnA4L3AFEo2iV7KyAtAAHFW9ftq1Fz+Vsgq80RQ==
- dependencies:
- lodash.camelcase "^4.3.0"
- long "^5.0.0"
- protobufjs "^7.2.4"
- yargs "^17.7.2"
-
-"@istanbuljs/load-nyc-config@^1.0.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
- integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==
- dependencies:
- camelcase "^5.3.1"
- find-up "^4.1.0"
- get-package-type "^0.1.0"
- js-yaml "^3.13.1"
- resolve-from "^5.0.0"
-
-"@istanbuljs/schema@^0.1.2":
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98"
- integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==
-
-"@jest/console@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/console/-/console-29.7.0.tgz#cd4822dbdb84529265c5a2bdb529a3c9cc950ffc"
- integrity sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
- slash "^3.0.0"
-
-"@jest/core@^29.6.1", "@jest/core@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/core/-/core-29.7.0.tgz#b6cccc239f30ff36609658c5a5e2291757ce448f"
- integrity sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==
- dependencies:
- "@jest/console" "^29.7.0"
- "@jest/reporters" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- ansi-escapes "^4.2.1"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- exit "^0.1.2"
- graceful-fs "^4.2.9"
- jest-changed-files "^29.7.0"
- jest-config "^29.7.0"
- jest-haste-map "^29.7.0"
- jest-message-util "^29.7.0"
- jest-regex-util "^29.6.3"
- jest-resolve "^29.7.0"
- jest-resolve-dependencies "^29.7.0"
- jest-runner "^29.7.0"
- jest-runtime "^29.7.0"
- jest-snapshot "^29.7.0"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- jest-watcher "^29.7.0"
- micromatch "^4.0.4"
- pretty-format "^29.7.0"
- slash "^3.0.0"
- strip-ansi "^6.0.0"
-
-"@jest/environment@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-29.7.0.tgz#24d61f54ff1f786f3cd4073b4b94416383baf2a7"
- integrity sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==
- dependencies:
- "@jest/fake-timers" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- jest-mock "^29.7.0"
-
-"@jest/expect-utils@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.7.0.tgz#023efe5d26a8a70f21677d0a1afc0f0a44e3a1c6"
- integrity sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==
- dependencies:
- jest-get-type "^29.6.3"
-
-"@jest/expect@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/expect/-/expect-29.7.0.tgz#76a3edb0cb753b70dfbfe23283510d3d45432bf2"
- integrity sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==
- dependencies:
- expect "^29.7.0"
- jest-snapshot "^29.7.0"
-
-"@jest/fake-timers@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-29.7.0.tgz#fd91bf1fffb16d7d0d24a426ab1a47a49881a565"
- integrity sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==
- dependencies:
- "@jest/types" "^29.6.3"
- "@sinonjs/fake-timers" "^10.0.2"
- "@types/node" "*"
- jest-message-util "^29.7.0"
- jest-mock "^29.7.0"
- jest-util "^29.7.0"
-
-"@jest/globals@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-29.7.0.tgz#8d9290f9ec47ff772607fa864ca1d5a2efae1d4d"
- integrity sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/expect" "^29.7.0"
- "@jest/types" "^29.6.3"
- jest-mock "^29.7.0"
-
-"@jest/reporters@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-29.7.0.tgz#04b262ecb3b8faa83b0b3d321623972393e8f4c7"
- integrity sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==
- dependencies:
- "@bcoe/v8-coverage" "^0.2.3"
- "@jest/console" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@jridgewell/trace-mapping" "^0.3.18"
- "@types/node" "*"
- chalk "^4.0.0"
- collect-v8-coverage "^1.0.0"
- exit "^0.1.2"
- glob "^7.1.3"
- graceful-fs "^4.2.9"
- istanbul-lib-coverage "^3.0.0"
- istanbul-lib-instrument "^6.0.0"
- istanbul-lib-report "^3.0.0"
- istanbul-lib-source-maps "^4.0.0"
- istanbul-reports "^3.1.3"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
- jest-worker "^29.7.0"
- slash "^3.0.0"
- string-length "^4.0.1"
- strip-ansi "^6.0.0"
- v8-to-istanbul "^9.0.1"
-
-"@jest/schemas@^29.6.3":
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03"
- integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==
- dependencies:
- "@sinclair/typebox" "^0.27.8"
-
-"@jest/source-map@^29.6.3":
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-29.6.3.tgz#d90ba772095cf37a34a5eb9413f1b562a08554c4"
- integrity sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==
- dependencies:
- "@jridgewell/trace-mapping" "^0.3.18"
- callsites "^3.0.0"
- graceful-fs "^4.2.9"
-
-"@jest/test-result@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-29.7.0.tgz#8db9a80aa1a097bb2262572686734baed9b1657c"
- integrity sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==
- dependencies:
- "@jest/console" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/istanbul-lib-coverage" "^2.0.0"
- collect-v8-coverage "^1.0.0"
-
-"@jest/test-sequencer@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz#6cef977ce1d39834a3aea887a1726628a6f072ce"
- integrity sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==
- dependencies:
- "@jest/test-result" "^29.7.0"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- slash "^3.0.0"
-
-"@jest/transform@^29.7.0":
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-29.7.0.tgz#df2dd9c346c7d7768b8a06639994640c642e284c"
- integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==
- dependencies:
- "@babel/core" "^7.11.6"
- "@jest/types" "^29.6.3"
- "@jridgewell/trace-mapping" "^0.3.18"
- babel-plugin-istanbul "^6.1.1"
- chalk "^4.0.0"
- convert-source-map "^2.0.0"
- fast-json-stable-stringify "^2.1.0"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- jest-regex-util "^29.6.3"
- jest-util "^29.7.0"
- micromatch "^4.0.4"
- pirates "^4.0.4"
- slash "^3.0.0"
- write-file-atomic "^4.0.2"
-
-"@jest/types@^29.6.1", "@jest/types@^29.6.3":
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59"
- integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==
- dependencies:
- "@jest/schemas" "^29.6.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.1.0":
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996"
- integrity sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==
- dependencies:
- "@jridgewell/set-array" "^1.0.0"
- "@jridgewell/sourcemap-codec" "^1.4.10"
-
-"@jridgewell/gen-mapping@^0.3.0":
- version "0.3.3"
- resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098"
- integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
- dependencies:
- "@jridgewell/set-array" "^1.0.1"
- "@jridgewell/sourcemap-codec" "^1.4.10"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@jridgewell/gen-mapping@^0.3.2":
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz#c1aedc61e853f2bb9f5dfe6d4442d3b565b253b9"
- integrity sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==
- dependencies:
- "@jridgewell/set-array" "^1.0.1"
- "@jridgewell/sourcemap-codec" "^1.4.10"
- "@jridgewell/trace-mapping" "^0.3.9"
-
-"@jridgewell/resolve-uri@^3.0.3":
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"
- integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
-
-"@jridgewell/resolve-uri@^3.1.0":
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721"
- integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==
-
-"@jridgewell/set-array@^1.0.0", "@jridgewell/set-array@^1.0.1":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72"
- integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
-
-"@jridgewell/sourcemap-codec@^1.4.10":
- version "1.4.14"
- resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"
- integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
-
-"@jridgewell/sourcemap-codec@^1.4.14":
- version "1.4.15"
- resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
- integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
-
-"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18":
- version "0.3.20"
- resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f"
- integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==
- dependencies:
- "@jridgewell/resolve-uri" "^3.1.0"
- "@jridgewell/sourcemap-codec" "^1.4.14"
-
-"@jridgewell/trace-mapping@^0.3.9":
- version "0.3.14"
- resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.14.tgz#b231a081d8f66796e475ad588a1ef473112701ed"
- integrity sha512-bJWEfQ9lPTvm3SneWwRFVLzrh6nhjwqw7TUFFBEMzwvg7t7PCDenf2lDwqo4NQXzdpgBXyFgDWnQA+2vkruksQ==
- dependencies:
- "@jridgewell/resolve-uri" "^3.0.3"
- "@jridgewell/sourcemap-codec" "^1.4.10"
-
-"@ledgerhq/cryptoassets@^11.0.1":
- version "11.0.1"
- resolved "https://registry.yarnpkg.com/@ledgerhq/cryptoassets/-/cryptoassets-11.0.1.tgz#3cac2efb11db025c525fd2bd28b7aa541fa068e5"
- integrity sha512-VhSA1ydoTnNjoC5c+S/a+YURJV+UNvuLVkRrKpP87zaQ2a+odPkP3EVDrU+G1Dvt/LipA24ZgcpoxXTbO6fQ9Q==
- dependencies:
- invariant "2"
-
-"@ledgerhq/devices@^8.0.7":
- version "8.0.7"
- resolved "https://registry.yarnpkg.com/@ledgerhq/devices/-/devices-8.0.7.tgz#206434dbd8a097529bbfc95f5eef94c2923c7578"
- integrity sha512-BbPyET52lXnVs7CxJWrGYqmtGdbGzj+XnfCqLsDnA7QYr1CZREysxmie+Rr6BKpNDBRVesAovXjtaVaZOn+upw==
- dependencies:
- "@ledgerhq/errors" "^6.14.0"
- "@ledgerhq/logs" "^6.10.1"
- rxjs "6"
- semver "^7.3.5"
-
-"@ledgerhq/domain-service@^1.1.13":
- version "1.1.13"
- resolved "https://registry.yarnpkg.com/@ledgerhq/domain-service/-/domain-service-1.1.13.tgz#e12be51cf677da455d63052891e5bdaca2755779"
- integrity sha512-8XQl4glEfNyX4BkNhuwe69mzn1VIasWFoKlgXIXf6gc8Rw1Qzcn0LE+/3DBxZ3pC3IWiBnm7MmXMrIaSLjnPNQ==
- dependencies:
- "@ledgerhq/cryptoassets" "^11.0.1"
- "@ledgerhq/errors" "^6.14.0"
- "@ledgerhq/logs" "^6.10.1"
- "@ledgerhq/types-live" "^6.41.1"
- axios "^1.3.4"
- eip55 "^2.1.1"
- react "^17.0.2"
- react-dom "^17.0.2"
-
-"@ledgerhq/errors@^6.14.0":
- version "6.14.0"
- resolved "https://registry.yarnpkg.com/@ledgerhq/errors/-/errors-6.14.0.tgz#0bf253983773ef12eebce2091f463bc719223b37"
- integrity sha512-ZWJw2Ti6Dq1Ott/+qYqJdDWeZm16qI3VNG5rFlb0TQ3UcAyLIQZbnnzzdcVVwVeZiEp66WIpINd/pBdqsHVyOA==
-
-"@ledgerhq/evm-tools@^1.0.9":
- version "1.0.9"
- resolved "https://registry.yarnpkg.com/@ledgerhq/evm-tools/-/evm-tools-1.0.9.tgz#fb3f99bf7e9648a7ff4f355e0f26b2d1bd29acd9"
- integrity sha512-yfNFGRDH+D59tZcR/iGBaW5RxKoPglRAolSUVJT+c+YN5DXRdS8yz+WrlhLrusoR4JHpfA3trBfw5KUrBrHY7g==
- dependencies:
- "@ledgerhq/cryptoassets" "^11.0.1"
- "@ledgerhq/live-env" "^0.6.0"
- "@ledgerhq/live-network" "^1.1.7"
- crypto-js "4.1.1"
- ethers "5.7.2"
-
-"@ledgerhq/hw-app-eth@^6.33.7":
- version "6.34.8"
- resolved "https://registry.yarnpkg.com/@ledgerhq/hw-app-eth/-/hw-app-eth-6.34.8.tgz#f2e1229307ded234d2cc02e00a7effb9f4b1e721"
- integrity sha512-sFYRGO7kgiTlgCRPdHJsF69s75TQz3Idi2YGn7eWhM/yxSJiAE1Kt/OLOW2ej68U/mfxI5pDIK8f8AZuK+8RFg==
- dependencies:
- "@ethersproject/abi" "^5.5.0"
- "@ethersproject/rlp" "^5.5.0"
- "@ledgerhq/cryptoassets" "^11.0.1"
- "@ledgerhq/domain-service" "^1.1.13"
- "@ledgerhq/errors" "^6.14.0"
- "@ledgerhq/evm-tools" "^1.0.9"
- "@ledgerhq/hw-transport" "^6.28.8"
- "@ledgerhq/hw-transport-mocker" "^6.27.19"
- "@ledgerhq/logs" "^6.10.1"
- "@ledgerhq/types-live" "^6.41.1"
- axios "^1.3.4"
- bignumber.js "^9.1.2"
-
-"@ledgerhq/hw-transport-http@^6.27.15", "@ledgerhq/hw-transport-http@^6.28.0":
- version "6.28.3"
- resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-http/-/hw-transport-http-6.28.3.tgz#829a0d006094edadec47c8673319f539f5aae393"
- integrity sha512-Z+zzK3v+rs/j9V2fc1uDJ38wBviziyU2sSSSHy0F2VnOhdEuE9i82hYsRniwi3c+pi9LThZP9kQrHOyeAnTaow==
- dependencies:
- "@ledgerhq/errors" "^6.14.0"
- "@ledgerhq/hw-transport" "^6.28.8"
- "@ledgerhq/logs" "^6.10.1"
- axios "^0.26.1"
- ws "^7.5.2"
-
-"@ledgerhq/hw-transport-mocker@^6.27.19":
- version "6.27.19"
- resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport-mocker/-/hw-transport-mocker-6.27.19.tgz#ad6ee81ce7e61e86e7b6edb07e09540e99c8a6cd"
- integrity sha512-sD/7Ht1flaHZcwIFOi2E1LTHYLdAOe206/JwlwRU78pT0oUan8FnXR5SD8PSmhwgmQjJXto+PFBlmVe5EIt9Lw==
- dependencies:
- "@ledgerhq/hw-transport" "^6.28.8"
- "@ledgerhq/logs" "^6.10.1"
-
-"@ledgerhq/hw-transport@^6.28.4", "@ledgerhq/hw-transport@^6.28.8":
- version "6.28.8"
- resolved "https://registry.yarnpkg.com/@ledgerhq/hw-transport/-/hw-transport-6.28.8.tgz#f99a5c71c5c09591e9bfb1b970c42aafbe81351f"
- integrity sha512-XxQVl4htd018u/M66r0iu5nlHi+J6QfdPsORzDF6N39jaz+tMqItb7tUlXM/isggcuS5lc7GJo7NOuJ8rvHZaQ==
- dependencies:
- "@ledgerhq/devices" "^8.0.7"
- "@ledgerhq/errors" "^6.14.0"
- events "^3.3.0"
-
-"@ledgerhq/live-env@^0.6.0":
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/@ledgerhq/live-env/-/live-env-0.6.0.tgz#fc4770fe8041cd7f4ba95d56deb9075ac0d89de1"
- integrity sha512-wWlatg4OT0p2jCmUERBtI6dduSe4BIZiSUuh1uSjQpbnTTPoMVHNjn4U7A4Ns1+Zz5TkmDwXS8yE523cRjjVrg==
- dependencies:
- rxjs "^6.6.7"
- utility-types "^3.10.0"
-
-"@ledgerhq/live-network@^1.1.7":
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/@ledgerhq/live-network/-/live-network-1.1.7.tgz#4838e9858489212ff68248e11c6bf7fd77554957"
- integrity sha512-OneMFcGRc5DbHWSNG41kfY/81Lm78IxJScIufGMW6beb0Sp6SmlHqkfjwrPLtp1GeHrJ2SqaXAvWROV/AexhUg==
- dependencies:
- "@ledgerhq/errors" "^6.14.0"
- "@ledgerhq/live-env" "^0.6.0"
- "@ledgerhq/live-promise" "^0.0.1"
- "@ledgerhq/logs" "^6.10.1"
- "@types/node" "^20.2.5"
- axios "0.26.1"
- invariant "^2.2.2"
- lru-cache "^7.14.1"
-
-"@ledgerhq/live-promise@^0.0.1":
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/@ledgerhq/live-promise/-/live-promise-0.0.1.tgz#2c559936dce638e4dfe9c04a414941c4bf80a56c"
- integrity sha512-R8sSYUuulsQ8Kd/TNNh0pB8XK1kJQAmSwNKyoU+T++c0X7jwbBv7R6/SphJg9Ts8dtHWyxHaxm9jkDBUVXpm2Q==
- dependencies:
- "@ledgerhq/logs" "^6.10.1"
-
-"@ledgerhq/logs@^6.10.1", "@ledgerhq/logs@^6.2.0":
- version "6.10.1"
- resolved "https://registry.yarnpkg.com/@ledgerhq/logs/-/logs-6.10.1.tgz#5bd16082261d7364eabb511c788f00937dac588d"
- integrity sha512-z+ILK8Q3y+nfUl43ctCPuR4Y2bIxk/ooCQFwZxhtci1EhAtMDzMAx2W25qx8G1PPL9UUOdnUax19+F0OjXoj4w==
-
-"@ledgerhq/types-live@^6.41.1":
- version "6.41.1"
- resolved "https://registry.yarnpkg.com/@ledgerhq/types-live/-/types-live-6.41.1.tgz#734e2e853400715a9fad705ba22413b846f7fcd3"
- integrity sha512-M9NcGlpyW7383HZ+Wcl+vVj07fKlBLQT29wrrPTW9raj2iq0fzyAaxSQPs0VKX6LghLQSmXG2EdcvQ9v5FakgA==
- dependencies:
- bignumber.js "^9.1.2"
- rxjs "6"
-
-"@nicolo-ribaudo/chokidar-2@2.1.8-no-fsevents.3":
- version "2.1.8-no-fsevents.3"
- resolved "https://registry.yarnpkg.com/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.3.tgz#323d72dd25103d0c4fbdce89dadf574a787b1f9b"
- integrity sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==
-
-"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf"
- integrity sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==
-
-"@protobufjs/base64@^1.1.2":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735"
- integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==
-
-"@protobufjs/codegen@^2.0.4":
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb"
- integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==
-
-"@protobufjs/eventemitter@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70"
- integrity sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==
-
-"@protobufjs/fetch@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45"
- integrity sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==
- dependencies:
- "@protobufjs/aspromise" "^1.1.1"
- "@protobufjs/inquire" "^1.1.0"
-
-"@protobufjs/float@^1.0.2":
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1"
- integrity sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==
-
-"@protobufjs/inquire@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089"
- integrity sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==
-
-"@protobufjs/path@^1.1.2":
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d"
- integrity sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==
-
-"@protobufjs/pool@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54"
- integrity sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==
-
-"@protobufjs/utf8@^1.1.0":
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
- integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==
-
-"@sinclair/typebox@^0.27.8":
- version "0.27.8"
- resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e"
- integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==
-
-"@sinonjs/commons@^3.0.0":
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-3.0.0.tgz#beb434fe875d965265e04722ccfc21df7f755d72"
- integrity sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==
- dependencies:
- type-detect "4.0.8"
-
-"@sinonjs/fake-timers@^10.0.2":
- version "10.3.0"
- resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz#55fdff1ecab9f354019129daf4df0dd4d923ea66"
- integrity sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==
- dependencies:
- "@sinonjs/commons" "^3.0.0"
-
-"@types/babel__core@^7.1.14":
- version "7.20.3"
- resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.3.tgz#d5625a50b6f18244425a1359a858c73d70340778"
- integrity sha512-54fjTSeSHwfan8AyHWrKbfBWiEUrNTZsUwPTDSNaaP1QDQIZbeNUg3a59E9D+375MzUw/x1vx2/0F5LBz+AeYA==
- 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.6.4"
- resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7"
- integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==
- dependencies:
- "@babel/types" "^7.0.0"
-
-"@types/babel__template@*":
- version "7.4.1"
- resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969"
- integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==
- dependencies:
- "@babel/parser" "^7.1.0"
- "@babel/types" "^7.0.0"
-
-"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6":
- version "7.17.1"
- resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.17.1.tgz#1a0e73e8c28c7e832656db372b779bfd2ef37314"
- integrity sha512-kVzjari1s2YVi77D3w1yuvohV2idweYXMCDzqBiVNN63TcDWrIlTVOYpqVrvbbyOE/IyzBoTKF0fdnLPEORFxA==
- dependencies:
- "@babel/types" "^7.3.0"
-
-"@types/graceful-fs@^4.1.3":
- version "4.1.8"
- resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.8.tgz#417e461e4dc79d957dc3107f45fe4973b09c2915"
- integrity sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw==
- dependencies:
- "@types/node" "*"
-
-"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44"
- integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==
-
-"@types/istanbul-lib-report@*":
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686"
- integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==
- dependencies:
- "@types/istanbul-lib-coverage" "*"
-
-"@types/istanbul-reports@^3.0.0":
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff"
- integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==
- dependencies:
- "@types/istanbul-lib-report" "*"
-
-"@types/node@*", "@types/node@>=12.12.47", "@types/node@>=13.7.0":
- version "18.0.6"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-18.0.6.tgz#0ba49ac517ad69abe7a1508bc9b3a5483df9d5d7"
- integrity sha512-/xUq6H2aQm261exT6iZTMifUySEt4GR5KX8eYyY+C4MSNPqSh9oNIP7tz2GLKTlFaiBbgZNxffoR3CVRG+cljw==
-
-"@types/node@^20.2.5":
- version "20.8.7"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.7.tgz#ad23827850843de973096edfc5abc9e922492a25"
- integrity sha512-21TKHHh3eUHIi2MloeptJWALuCu5H7HQTdTrWIFReA8ad+aggoX+lRes3ex7/FtpC+sVUpFMQ+QTfYr74mruiQ==
- dependencies:
- undici-types "~5.25.1"
-
-"@types/stack-utils@^2.0.0":
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c"
- integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==
-
-"@types/yargs-parser@*":
- version "21.0.0"
- resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b"
- integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==
-
-"@types/yargs@^17.0.8":
- version "17.0.29"
- resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.29.tgz#06aabc72497b798c643c812a8b561537fea760cf"
- integrity sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==
- dependencies:
- "@types/yargs-parser" "*"
-
-"@zondax/zemu@^0.43.1":
- version "0.43.1"
- resolved "https://registry.yarnpkg.com/@zondax/zemu/-/zemu-0.43.1.tgz#47a1ad913ed13a7a930cc3d161a4b69c3e2d7408"
- integrity sha512-TmwUkOCeN3G/Qi7VmB/G/d8t4J/pYtvuWayS/0cOWIuvNX0Rr0Vs0WF11614CQBT0IcrMo+EU75JMopUzjvHKA==
- dependencies:
- "@grpc/grpc-js" "^1.8.15"
- "@grpc/proto-loader" "^0.7.5"
- "@ledgerhq/hw-transport" "^6.28.4"
- "@ledgerhq/hw-transport-http" "^6.27.15"
- axios "^1.3.4"
- axios-retry "^3.4.0"
- dockerode "^3.3.1"
- elfy "^1.0.0"
- fs-extra "^11.0.0"
- get-port "^5.1.1"
- pngjs "^7.0.0"
- randomstring "^1.3.0"
-
-aes-js@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d"
- integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==
-
-ansi-escapes@^4.2.1:
- version "4.3.2"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
- 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.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
- integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
-
-ansi-styles@^3.2.1:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
- 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.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
- integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
- dependencies:
- color-convert "^2.0.1"
-
-ansi-styles@^5.0.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b"
- integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==
-
-anymatch@^3.0.3, anymatch@~3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"
- integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==
- dependencies:
- normalize-path "^3.0.0"
- picomatch "^2.0.4"
-
-argparse@^1.0.7:
- version "1.0.10"
- resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
- integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
- dependencies:
- sprintf-js "~1.0.2"
-
-asn1@^0.2.4:
- version "0.2.6"
- resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d"
- integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==
- dependencies:
- safer-buffer "~2.1.0"
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
- integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
-
-axios-retry@^3.4.0:
- version "3.8.0"
- resolved "https://registry.yarnpkg.com/axios-retry/-/axios-retry-3.8.0.tgz#a174af633ef143a9f5642b9e4afe65c2017936b5"
- integrity sha512-CfIsQyWNc5/AE7x/UEReRUadiBmQeoBpSEC+4QyGLJMswTsP1tz0GW2YYPnE7w9+ESMef5zOgLDFpHynNyEZ1w==
- dependencies:
- "@babel/runtime" "^7.15.4"
- is-retry-allowed "^2.2.0"
-
-axios@0.26.1, axios@^0.26.1:
- version "0.26.1"
- resolved "https://registry.yarnpkg.com/axios/-/axios-0.26.1.tgz#1ede41c51fcf51bbbd6fd43669caaa4f0495aaa9"
- integrity sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==
- dependencies:
- follow-redirects "^1.14.8"
-
-axios@^1.3.4:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/axios/-/axios-1.5.1.tgz#11fbaa11fc35f431193a9564109c88c1f27b585f"
- integrity sha512-Q28iYCWzNHjAm+yEAot5QaAMxhMghWLFVf7rRdwhUI+c2jix2DUXjAHXVi+s1ibs3mjPO/cCgbA++3BjD0vP/A==
- dependencies:
- follow-redirects "^1.15.0"
- form-data "^4.0.0"
- proxy-from-env "^1.1.0"
-
-babel-jest@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-29.7.0.tgz#f4369919225b684c56085998ac63dbd05be020d5"
- integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==
- dependencies:
- "@jest/transform" "^29.7.0"
- "@types/babel__core" "^7.1.14"
- babel-plugin-istanbul "^6.1.1"
- babel-preset-jest "^29.6.3"
- chalk "^4.0.0"
- graceful-fs "^4.2.9"
- slash "^3.0.0"
-
-babel-plugin-istanbul@^6.1.1:
- version "6.1.1"
- resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73"
- integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==
- dependencies:
- "@babel/helper-plugin-utils" "^7.0.0"
- "@istanbuljs/load-nyc-config" "^1.0.0"
- "@istanbuljs/schema" "^0.1.2"
- istanbul-lib-instrument "^5.0.4"
- test-exclude "^6.0.0"
-
-babel-plugin-jest-hoist@^29.6.3:
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz#aadbe943464182a8922c3c927c3067ff40d24626"
- integrity sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==
- dependencies:
- "@babel/template" "^7.3.3"
- "@babel/types" "^7.3.3"
- "@types/babel__core" "^7.1.14"
- "@types/babel__traverse" "^7.0.6"
-
-babel-plugin-polyfill-corejs2@^0.4.6:
- version "0.4.6"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz#b2df0251d8e99f229a8e60fc4efa9a68b41c8313"
- integrity sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==
- dependencies:
- "@babel/compat-data" "^7.22.6"
- "@babel/helper-define-polyfill-provider" "^0.4.3"
- semver "^6.3.1"
-
-babel-plugin-polyfill-corejs3@^0.8.5:
- version "0.8.5"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.5.tgz#a75fa1b0c3fc5bd6837f9ec465c0f48031b8cab1"
- integrity sha512-Q6CdATeAvbScWPNLB8lzSO7fgUVBkQt6zLgNlfyeCr/EQaEQR+bWiBYYPYAFyE528BMjRhL+1QBMOI4jc/c5TA==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.4.3"
- core-js-compat "^3.32.2"
-
-babel-plugin-polyfill-regenerator@^0.5.3:
- version "0.5.3"
- resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz#d4c49e4b44614607c13fb769bcd85c72bb26a4a5"
- integrity sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==
- dependencies:
- "@babel/helper-define-polyfill-provider" "^0.4.3"
-
-babel-preset-current-node-syntax@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b"
- integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==
- dependencies:
- "@babel/plugin-syntax-async-generators" "^7.8.4"
- "@babel/plugin-syntax-bigint" "^7.8.3"
- "@babel/plugin-syntax-class-properties" "^7.8.3"
- "@babel/plugin-syntax-import-meta" "^7.8.3"
- "@babel/plugin-syntax-json-strings" "^7.8.3"
- "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3"
- "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3"
- "@babel/plugin-syntax-numeric-separator" "^7.8.3"
- "@babel/plugin-syntax-object-rest-spread" "^7.8.3"
- "@babel/plugin-syntax-optional-catch-binding" "^7.8.3"
- "@babel/plugin-syntax-optional-chaining" "^7.8.3"
- "@babel/plugin-syntax-top-level-await" "^7.8.3"
-
-babel-preset-jest@^29.6.3:
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz#fa05fa510e7d493896d7b0dd2033601c840f171c"
- integrity sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==
- dependencies:
- babel-plugin-jest-hoist "^29.6.3"
- babel-preset-current-node-syntax "^1.0.0"
-
-balanced-match@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
- integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-
-base64-js@^1.3.1:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
- integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
-
-bcrypt-pbkdf@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
- integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==
- dependencies:
- tweetnacl "^0.14.3"
-
-bech32@1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9"
- integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==
-
-bignumber.js@^9.1.2:
- version "9.1.2"
- resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.1.2.tgz#b7c4242259c008903b13707983b5f4bbd31eda0c"
- integrity sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==
-
-binary-extensions@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
- integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
-
-bindings@^1.5.0:
- version "1.5.0"
- resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df"
- integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==
- dependencies:
- file-uri-to-path "1.0.0"
-
-bip32-path@^0.4.2:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/bip32-path/-/bip32-path-0.4.2.tgz#5db0416ad6822712f077836e2557b8697c0c7c99"
- integrity sha512-ZBMCELjJfcNMkz5bDuJ1WrYvjlhEF5k6mQ8vUr4N7MbVRsXei7ZOg8VhhwMfNiW68NWmLkgkc6WvTickrLGprQ==
-
-bip66@^1.1.5:
- version "1.1.5"
- resolved "https://registry.yarnpkg.com/bip66/-/bip66-1.1.5.tgz#01fa8748785ca70955d5011217d1b3139969ca22"
- integrity sha512-nemMHz95EmS38a26XbbdxIYj5csHd3RMP3H5bwQknX0WYHF01qhpufP42mLOwVICuH2JmhIhXiWs89MfUGL7Xw==
- dependencies:
- safe-buffer "^5.0.1"
-
-bl@^4.0.3:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a"
- integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==
- dependencies:
- buffer "^5.5.0"
- inherits "^2.0.4"
- readable-stream "^3.4.0"
-
-bn.js@^4.11.8, bn.js@^4.11.9:
- version "4.12.0"
- resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88"
- integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==
-
-bn.js@^5.2.1:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70"
- integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==
-
-brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-braces@^3.0.2, braces@~3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
- integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
- dependencies:
- fill-range "^7.0.1"
-
-brorand@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
- integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==
-
-browserify-aes@^1.0.6:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48"
- integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==
- dependencies:
- buffer-xor "^1.0.3"
- cipher-base "^1.0.0"
- create-hash "^1.1.0"
- evp_bytestokey "^1.0.3"
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
-
-browserslist@^4.20.2:
- version "4.21.2"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.2.tgz#59a400757465535954946a400b841ed37e2b4ecf"
- integrity sha512-MonuOgAtUB46uP5CezYbRaYKBNt2LxP0yX+Pmj4LkcDFGkn9Cbpi83d9sCjwQDErXsIJSzY5oKGDbgOlF/LPAA==
- dependencies:
- caniuse-lite "^1.0.30001366"
- electron-to-chromium "^1.4.188"
- node-releases "^2.0.6"
- update-browserslist-db "^1.0.4"
-
-browserslist@^4.21.9, browserslist@^4.22.1:
- version "4.22.1"
- resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619"
- integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==
- dependencies:
- caniuse-lite "^1.0.30001541"
- electron-to-chromium "^1.4.535"
- node-releases "^2.0.13"
- update-browserslist-db "^1.0.13"
-
-bser@2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05"
- integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==
- dependencies:
- node-int64 "^0.4.0"
-
-buffer-from@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
- integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
-
-buffer-xor@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9"
- integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==
-
-buffer@^5.5.0:
- version "5.7.1"
- resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
- integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==
- dependencies:
- base64-js "^1.3.1"
- ieee754 "^1.1.13"
-
-buildcheck@0.0.3:
- version "0.0.3"
- resolved "https://registry.yarnpkg.com/buildcheck/-/buildcheck-0.0.3.tgz#70451897a95d80f7807e68fc412eb2e7e35ff4d5"
- integrity sha512-pziaA+p/wdVImfcbsZLNF32EiWyujlQLwolMqUQE8xpKNOH7KmZQaY8sXN7DGOEzPAElo9QTaeNRfGnf3iOJbA==
-
-callsites@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
- integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
-
-camelcase@^5.3.1:
- version "5.3.1"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320"
- integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==
-
-camelcase@^6.2.0:
- version "6.3.0"
- resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
- integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
-
-caniuse-lite@^1.0.30001366:
- version "1.0.30001368"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001368.tgz#c5c06381c6051cd863c45021475434e81936f713"
- integrity sha512-wgfRYa9DenEomLG/SdWgQxpIyvdtH3NW8Vq+tB6AwR9e56iOIcu1im5F/wNdDf04XlKHXqIx4N8Jo0PemeBenQ==
-
-caniuse-lite@^1.0.30001541:
- version "1.0.30001551"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001551.tgz#1f2cfa8820bd97c971a57349d7fd8f6e08664a3e"
- integrity sha512-vtBAez47BoGMMzlbYhfXrMV1kvRF2WP/lqiMuDu1Sb4EE4LKEgjopFDSRtZfdVnslNRpOqV/woE+Xgrwj6VQlg==
-
-chalk@^2.0.0, chalk@^2.4.2:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
- 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@^4.0.0:
- version "4.1.2"
- resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
- integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
- dependencies:
- ansi-styles "^4.1.0"
- supports-color "^7.1.0"
-
-char-regex@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf"
- integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==
-
-chokidar@^3.4.0:
- version "3.5.3"
- resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
- 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"
-
-chownr@^1.1.1:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"
- integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
-
-ci-info@^3.2.0:
- version "3.9.0"
- resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4"
- integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==
-
-cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
- integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==
- dependencies:
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
-
-cjs-module-lexer@^1.0.0:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107"
- integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==
-
-cliui@^8.0.1:
- version "8.0.1"
- resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa"
- integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==
- dependencies:
- string-width "^4.2.0"
- strip-ansi "^6.0.1"
- wrap-ansi "^7.0.0"
-
-clone-deep@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"
- integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==
- dependencies:
- is-plain-object "^2.0.4"
- kind-of "^6.0.2"
- shallow-clone "^3.0.0"
-
-co@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
- integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==
-
-collect-v8-coverage@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59"
- integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==
-
-color-convert@^1.9.0:
- version "1.9.3"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
- 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.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
- integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
- dependencies:
- color-name "~1.1.4"
-
-color-name@1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
- integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
-
-color-name@~1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
- integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
-
-combined-stream@^1.0.8:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
- integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
- dependencies:
- delayed-stream "~1.0.0"
-
-commander@^4.0.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068"
- integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
-
-commondir@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
- integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
-
-convert-source-map@^1.7.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369"
- integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==
- dependencies:
- safe-buffer "~5.1.1"
-
-convert-source-map@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a"
- integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==
-
-core-js-compat@^3.31.0, core-js-compat@^3.32.2:
- version "3.33.0"
- resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.33.0.tgz#24aa230b228406450b2277b7c8bfebae932df966"
- integrity sha512-0w4LcLXsVEuNkIqwjjf9rjCoPhK8uqA4tMRh4Ge26vfLtUutshn+aRJU21I9LCJlh2QQHfisNToLjw1XEJLTWw==
- dependencies:
- browserslist "^4.22.1"
-
-core-js@^3.31.1:
- version "3.33.0"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.33.0.tgz#70366dbf737134761edb017990cf5ce6c6369c40"
- integrity sha512-HoZr92+ZjFEKar5HS6MC776gYslNOKHt75mEBKWKnPeFDpZ6nH5OeF3S6HFT1mUAUZKrzkez05VboaX8myjSuw==
-
-cpu-features@~0.0.4:
- version "0.0.4"
- resolved "https://registry.yarnpkg.com/cpu-features/-/cpu-features-0.0.4.tgz#0023475bb4f4c525869c162e4108099e35bf19d8"
- integrity sha512-fKiZ/zp1mUwQbnzb9IghXtHtDoTMtNeb8oYGx6kX2SYfhnG0HNdBEBIzB9b5KlXu5DQPhfy3mInbBxFcgwAr3A==
- dependencies:
- buildcheck "0.0.3"
- nan "^2.15.0"
-
-create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196"
- integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==
- dependencies:
- cipher-base "^1.0.1"
- inherits "^2.0.1"
- md5.js "^1.3.4"
- ripemd160 "^2.0.1"
- sha.js "^2.4.0"
-
-create-hmac@^1.1.4:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff"
- integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==
- dependencies:
- cipher-base "^1.0.3"
- create-hash "^1.1.0"
- inherits "^2.0.1"
- ripemd160 "^2.0.0"
- safe-buffer "^5.0.1"
- sha.js "^2.4.8"
-
-create-jest@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/create-jest/-/create-jest-29.7.0.tgz#a355c5b3cb1e1af02ba177fe7afd7feee49a5320"
- integrity sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==
- dependencies:
- "@jest/types" "^29.6.3"
- chalk "^4.0.0"
- exit "^0.1.2"
- graceful-fs "^4.2.9"
- jest-config "^29.7.0"
- jest-util "^29.7.0"
- prompts "^2.0.1"
-
-cross-spawn@^7.0.3:
- version "7.0.3"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
- integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
- dependencies:
- path-key "^3.1.0"
- shebang-command "^2.0.0"
- which "^2.0.1"
-
-crypto-js@4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf"
- integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==
-
-debug@^4.1.0, debug@^4.1.1:
- version "4.3.4"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
- integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
- dependencies:
- ms "2.1.2"
-
-dedent@^1.0.0:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/dedent/-/dedent-1.5.1.tgz#4f3fc94c8b711e9bb2800d185cd6ad20f2a90aff"
- integrity sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==
-
-deepmerge@^4.2.2:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955"
- integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
- integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
-
-detect-newline@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
- integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
-
-diff-sequences@^29.6.3:
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.6.3.tgz#4deaf894d11407c51efc8418012f9e70b84ea921"
- integrity sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==
-
-docker-modem@^3.0.0:
- version "3.0.5"
- resolved "https://registry.yarnpkg.com/docker-modem/-/docker-modem-3.0.5.tgz#86b7d25ac85fd5515380ba1fccc327fe17346686"
- integrity sha512-x1E6jxWdtoK3+ifAUWj4w5egPdTDGBpesSCErm+aKET5BnnEOvDtTP6GxcnMB1zZiv2iQ0qJZvJie+1wfIRg6Q==
- dependencies:
- debug "^4.1.1"
- readable-stream "^3.5.0"
- split-ca "^1.0.1"
- ssh2 "^1.4.0"
-
-dockerode@^3.3.1:
- version "3.3.2"
- resolved "https://registry.yarnpkg.com/dockerode/-/dockerode-3.3.2.tgz#f3545700d2f7f86141b58843a755eeb21e38d5cd"
- integrity sha512-oXN+1XVH2TeyE0Jj9Ci6Fim8ZIDxyqeJrkx9qhEOaRiA+nhLihKfd3M2L+Aqrj5C2ObPw8RVN2zPWvvk0x2dwg==
- dependencies:
- docker-modem "^3.0.0"
- tar-fs "~2.0.1"
-
-drbg.js@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/drbg.js/-/drbg.js-1.0.1.tgz#3e36b6c42b37043823cdbc332d58f31e2445480b"
- integrity sha512-F4wZ06PvqxYLFEZKkFxTDcns9oFNk34hvmJSEwdzsxVQ8YI5YaxtACgQatkYgv2VI2CFkUd2Y+xosPQnHv809g==
- dependencies:
- browserify-aes "^1.0.6"
- create-hash "^1.1.2"
- create-hmac "^1.1.4"
-
-eip55@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/eip55/-/eip55-2.1.1.tgz#28b743c4701ac3c811b1e9fe67e39cf1d0781b96"
- integrity sha512-WcagVAmNu2Ww2cDUfzuWVntYwFxbvZ5MvIyLZpMjTTkjD6sCvkGOiS86jTppzu9/gWsc8isLHAeMBWK02OnZmA==
- dependencies:
- keccak "^3.0.3"
-
-electron-to-chromium@^1.4.188:
- version "1.4.198"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.198.tgz#36a8e7871046f7f94c01dc0133912fd5cf226c6a"
- integrity sha512-jwqQPdKGeAslcq8L+1SZZgL6uDiIDmTe9Gq4brsdWAH27y7MJ2g9Ue6MyST3ogmSM49EAQP7bype1V5hsuNrmQ==
-
-electron-to-chromium@^1.4.535:
- version "1.4.559"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.559.tgz#050483c22c5eb2345017a8976a67b060559a33f4"
- integrity sha512-iS7KhLYCSJbdo3rUSkhDTVuFNCV34RKs2UaB9Ecr7VlqzjjWW//0nfsFF5dtDmyXlZQaDYYtID5fjtC/6lpRug==
-
-elfy@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/elfy/-/elfy-1.0.0.tgz#7a1c86af7d41e0a568cbb4a3fa5b685648d9efcd"
- integrity sha512-4Kp3AA94jC085IJox+qnvrZ3PudqTi4gQNvIoTZfJJ9IqkRuCoqP60vCVYlIg00c5aYusi5Wjh2bf0cHYt+6gQ==
- dependencies:
- endian-reader "^0.3.0"
-
-elliptic@6.5.4, elliptic@^6.5.2:
- version "6.5.4"
- resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb"
- integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==
- dependencies:
- bn.js "^4.11.9"
- brorand "^1.1.0"
- hash.js "^1.0.0"
- hmac-drbg "^1.0.1"
- inherits "^2.0.4"
- minimalistic-assert "^1.0.1"
- minimalistic-crypto-utils "^1.0.1"
-
-emittery@^0.13.1:
- version "0.13.1"
- resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.13.1.tgz#c04b8c3457490e0847ae51fced3af52d338e3dad"
- integrity sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==
-
-emoji-regex@^8.0.0:
- version "8.0.0"
- resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
- integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
-
-end-of-stream@^1.1.0, end-of-stream@^1.4.1:
- version "1.4.4"
- resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
- integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
- dependencies:
- once "^1.4.0"
-
-endian-reader@^0.3.0:
- version "0.3.0"
- resolved "https://registry.yarnpkg.com/endian-reader/-/endian-reader-0.3.0.tgz#84eca436b80aed0d0639c47291338b932efe50a0"
- integrity sha512-zPlHN59VLEjeJtpEU41ti/i7ZvTbwclvUN2M8anCsI3tOC/3mq6WNTJEKi49A5eLGvDkA0975LZb67Xwp7u4xQ==
-
-error-ex@^1.3.1:
- version "1.3.2"
- resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
- integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
- dependencies:
- is-arrayish "^0.2.1"
-
-escalade@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
- integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
-
-escape-string-regexp@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
- integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
-
-escape-string-regexp@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
- integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
-
-esprima@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
- integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
-
-esutils@^2.0.2:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
- integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-
-ethereum-tx-decoder@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/ethereum-tx-decoder/-/ethereum-tx-decoder-3.0.0.tgz#7ef704c1b7e228128cdb81d6a3d2ab57a378b90f"
- integrity sha512-l+/K/CNAobJjfGs6lO4RrR17KQrwESrGH2GrkASn7MH2FAJRkItFP21Iy2fCOUjy1Y1nBVoTO6w1GPCgVQH2hg==
- dependencies:
- ethers "^4.0.37"
-
-ethers@5.7.2, ethers@^5.6.3:
- version "5.7.2"
- resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e"
- integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg==
- dependencies:
- "@ethersproject/abi" "5.7.0"
- "@ethersproject/abstract-provider" "5.7.0"
- "@ethersproject/abstract-signer" "5.7.0"
- "@ethersproject/address" "5.7.0"
- "@ethersproject/base64" "5.7.0"
- "@ethersproject/basex" "5.7.0"
- "@ethersproject/bignumber" "5.7.0"
- "@ethersproject/bytes" "5.7.0"
- "@ethersproject/constants" "5.7.0"
- "@ethersproject/contracts" "5.7.0"
- "@ethersproject/hash" "5.7.0"
- "@ethersproject/hdnode" "5.7.0"
- "@ethersproject/json-wallets" "5.7.0"
- "@ethersproject/keccak256" "5.7.0"
- "@ethersproject/logger" "5.7.0"
- "@ethersproject/networks" "5.7.1"
- "@ethersproject/pbkdf2" "5.7.0"
- "@ethersproject/properties" "5.7.0"
- "@ethersproject/providers" "5.7.2"
- "@ethersproject/random" "5.7.0"
- "@ethersproject/rlp" "5.7.0"
- "@ethersproject/sha2" "5.7.0"
- "@ethersproject/signing-key" "5.7.0"
- "@ethersproject/solidity" "5.7.0"
- "@ethersproject/strings" "5.7.0"
- "@ethersproject/transactions" "5.7.0"
- "@ethersproject/units" "5.7.0"
- "@ethersproject/wallet" "5.7.0"
- "@ethersproject/web" "5.7.1"
- "@ethersproject/wordlists" "5.7.0"
-
-ethers@^4.0.37:
- version "4.0.49"
- resolved "https://registry.yarnpkg.com/ethers/-/ethers-4.0.49.tgz#0eb0e9161a0c8b4761be547396bbe2fb121a8894"
- integrity sha512-kPltTvWiyu+OktYy1IStSO16i2e7cS9D9OxZ81q2UUaiNPVrm/RTcbxamCXF9VUSKzJIdJV68EAIhTEVBalRWg==
- dependencies:
- aes-js "3.0.0"
- bn.js "^4.11.9"
- elliptic "6.5.4"
- hash.js "1.1.3"
- js-sha3 "0.5.7"
- scrypt-js "2.0.4"
- setimmediate "1.0.4"
- uuid "2.0.1"
- xmlhttprequest "1.8.0"
-
-events@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
- integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
-
-evp_bytestokey@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02"
- integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==
- dependencies:
- md5.js "^1.3.4"
- safe-buffer "^5.1.1"
-
-execa@^5.0.0:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
- 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"
-
-exit@^0.1.2:
- version "0.1.2"
- resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
- integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==
-
-expect@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/expect/-/expect-29.7.0.tgz#578874590dcb3214514084c08115d8aee61e11bc"
- integrity sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==
- dependencies:
- "@jest/expect-utils" "^29.7.0"
- jest-get-type "^29.6.3"
- jest-matcher-utils "^29.7.0"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
-
-fast-json-stable-stringify@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
- integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
-
-fb-watchman@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85"
- integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==
- dependencies:
- bser "2.1.1"
-
-file-uri-to-path@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd"
- integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==
-
-fill-range@^7.0.1:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
- integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
- dependencies:
- to-regex-range "^5.0.1"
-
-find-cache-dir@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7"
- integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==
- dependencies:
- commondir "^1.0.1"
- make-dir "^2.0.0"
- pkg-dir "^3.0.0"
-
-find-up@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73"
- integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==
- dependencies:
- locate-path "^3.0.0"
-
-find-up@^4.0.0, find-up@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
- integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
- dependencies:
- locate-path "^5.0.0"
- path-exists "^4.0.0"
-
-flow-bin@^0.112.0:
- version "0.112.0"
- resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.112.0.tgz#6a21c31937c4a2f23a750056a364c598a95ea216"
- integrity sha512-vdcuKv0UU55vjv0e2EVh1ZxlU+TSNT19SkE+6gT1vYzTKtzYE6dLuAmBIiS3Rg2N9D9HOI6TKSyl53zPtqZLrA==
-
-follow-redirects@^1.14.8:
- version "1.15.1"
- resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5"
- integrity sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==
-
-follow-redirects@^1.15.0:
- version "1.15.3"
- resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a"
- integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q==
-
-form-data@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
- integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.8"
- mime-types "^2.1.12"
-
-fs-constants@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
- integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==
-
-fs-extra@^10.0.0:
- version "10.1.0"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf"
- integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
- dependencies:
- graceful-fs "^4.2.0"
- jsonfile "^6.0.1"
- universalify "^2.0.0"
-
-fs-extra@^11.0.0:
- version "11.1.1"
- resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d"
- integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==
- dependencies:
- graceful-fs "^4.2.0"
- jsonfile "^6.0.1"
- universalify "^2.0.0"
-
-fs-readdir-recursive@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz#e32fc030a2ccee44a6b5371308da54be0b397d27"
- integrity sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==
-
-fs.realpath@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
- integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
-
-fsevents@^2.3.2:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
- integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
-
-fsevents@~2.3.2:
- version "2.3.2"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
- integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
-
-function-bind@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
- integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-
-gensync@^1.0.0-beta.2:
- version "1.0.0-beta.2"
- resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
- integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
-
-get-caller-file@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
- integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
-
-get-package-type@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a"
- integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==
-
-get-port@^5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193"
- integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==
-
-get-stream@^6.0.0:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
- integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
-
-glob-parent@~5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
- integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
- dependencies:
- is-glob "^4.0.1"
-
-glob@^7.1.3, glob@^7.1.4, glob@^7.2.0:
- version "7.2.3"
- resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
- 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.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
- integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
-
-google-protobuf@^3.11.0:
- version "3.20.1"
- resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.20.1.tgz#1b255c2b59bcda7c399df46c65206aa3c7a0ce8b"
- integrity sha512-XMf1+O32FjYIV3CYu6Tuh5PNbfNEU5Xu22X+Xkdb/DUexFlCzhvv7d5Iirm4AOwn8lv4al1YvIhzGrg2j9Zfzw==
-
-graceful-fs@^4.1.6, graceful-fs@^4.2.0:
- version "4.2.10"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c"
- integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==
-
-graceful-fs@^4.2.9:
- version "4.2.11"
- resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
- integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
-
-has-flag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
- integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
-
-has-flag@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
- integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
-
-has@^1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
- integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
- dependencies:
- function-bind "^1.1.1"
-
-hash-base@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33"
- integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==
- dependencies:
- inherits "^2.0.4"
- readable-stream "^3.6.0"
- safe-buffer "^5.2.0"
-
-hash.js@1.1.3:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846"
- integrity sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==
- dependencies:
- inherits "^2.0.3"
- minimalistic-assert "^1.0.0"
-
-hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3:
- version "1.1.7"
- resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42"
- integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==
- dependencies:
- inherits "^2.0.3"
- minimalistic-assert "^1.0.1"
-
-hmac-drbg@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
- integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==
- dependencies:
- hash.js "^1.0.3"
- minimalistic-assert "^1.0.0"
- minimalistic-crypto-utils "^1.0.1"
-
-html-escaper@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
- integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
-
-human-signals@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
- integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
-
-ieee754@^1.1.13:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
- integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
-
-import-local@^3.0.2:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4"
- integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==
- dependencies:
- pkg-dir "^4.2.0"
- resolve-cwd "^3.0.0"
-
-imurmurhash@^0.1.4:
- version "0.1.4"
- resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
- integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
-
-inflight@^1.0.4:
- version "1.0.6"
- resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
- integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
- dependencies:
- once "^1.3.0"
- wrappy "1"
-
-inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
-invariant@2, invariant@^2.2.2:
- version "2.2.4"
- resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
- integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
- dependencies:
- loose-envify "^1.0.0"
-
-is-arrayish@^0.2.1:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
- integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
-
-is-binary-path@~2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
- integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
- dependencies:
- binary-extensions "^2.0.0"
-
-is-core-module@^2.13.0:
- version "2.13.0"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.0.tgz#bb52aa6e2cbd49a30c2ba68c42bf3435ba6072db"
- integrity sha512-Z7dk6Qo8pOCp3l4tsX2C5ZVas4V+UxwQodwZhLopL91TX8UyyHEXafPcyoeeWuLrwzHcr3igO78wNLwHJHsMCQ==
- dependencies:
- has "^1.0.3"
-
-is-core-module@^2.9.0:
- version "2.9.0"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69"
- integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==
- dependencies:
- has "^1.0.3"
-
-is-extglob@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
- integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
-
-is-fullwidth-code-point@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
- integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
-
-is-generator-fn@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118"
- integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==
-
-is-glob@^4.0.1, is-glob@~4.0.1:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
- integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
- dependencies:
- is-extglob "^2.1.1"
-
-is-number@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
-
-is-plain-object@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
- integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
- dependencies:
- isobject "^3.0.1"
-
-is-retry-allowed@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz#88f34cbd236e043e71b6932d09b0c65fb7b4d71d"
- integrity sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg==
-
-is-stream@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
- integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
-
-isobject@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
- integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
-
-istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3"
- integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==
-
-istanbul-lib-instrument@^5.0.4:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz#31d18bdd127f825dd02ea7bfdfd906f8ab840e9f"
- integrity sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==
- dependencies:
- "@babel/core" "^7.12.3"
- "@babel/parser" "^7.14.7"
- "@istanbuljs/schema" "^0.1.2"
- istanbul-lib-coverage "^3.2.0"
- semver "^6.3.0"
-
-istanbul-lib-instrument@^6.0.0:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz#71e87707e8041428732518c6fb5211761753fbdf"
- integrity sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==
- dependencies:
- "@babel/core" "^7.12.3"
- "@babel/parser" "^7.14.7"
- "@istanbuljs/schema" "^0.1.2"
- istanbul-lib-coverage "^3.2.0"
- semver "^7.5.4"
-
-istanbul-lib-report@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6"
- integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==
- dependencies:
- istanbul-lib-coverage "^3.0.0"
- make-dir "^3.0.0"
- supports-color "^7.1.0"
-
-istanbul-lib-source-maps@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551"
- integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==
- dependencies:
- debug "^4.1.1"
- istanbul-lib-coverage "^3.0.0"
- source-map "^0.6.1"
-
-istanbul-reports@^3.1.3:
- version "3.1.6"
- resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a"
- integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==
- dependencies:
- html-escaper "^2.0.0"
- istanbul-lib-report "^3.0.0"
-
-jest-changed-files@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-29.7.0.tgz#1c06d07e77c78e1585d020424dedc10d6e17ac3a"
- integrity sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==
- dependencies:
- execa "^5.0.0"
- jest-util "^29.7.0"
- p-limit "^3.1.0"
-
-jest-circus@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-29.7.0.tgz#b6817a45fcc835d8b16d5962d0c026473ee3668a"
- integrity sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/expect" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- co "^4.6.0"
- dedent "^1.0.0"
- is-generator-fn "^2.0.0"
- jest-each "^29.7.0"
- jest-matcher-utils "^29.7.0"
- jest-message-util "^29.7.0"
- jest-runtime "^29.7.0"
- jest-snapshot "^29.7.0"
- jest-util "^29.7.0"
- p-limit "^3.1.0"
- pretty-format "^29.7.0"
- pure-rand "^6.0.0"
- slash "^3.0.0"
- stack-utils "^2.0.3"
-
-jest-cli@^29.6.1:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-29.7.0.tgz#5592c940798e0cae677eec169264f2d839a37995"
- integrity sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==
- dependencies:
- "@jest/core" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/types" "^29.6.3"
- chalk "^4.0.0"
- create-jest "^29.7.0"
- exit "^0.1.2"
- import-local "^3.0.2"
- jest-config "^29.7.0"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- yargs "^17.3.1"
-
-jest-config@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-29.7.0.tgz#bcbda8806dbcc01b1e316a46bb74085a84b0245f"
- integrity sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==
- dependencies:
- "@babel/core" "^7.11.6"
- "@jest/test-sequencer" "^29.7.0"
- "@jest/types" "^29.6.3"
- babel-jest "^29.7.0"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- deepmerge "^4.2.2"
- glob "^7.1.3"
- graceful-fs "^4.2.9"
- jest-circus "^29.7.0"
- jest-environment-node "^29.7.0"
- jest-get-type "^29.6.3"
- jest-regex-util "^29.6.3"
- jest-resolve "^29.7.0"
- jest-runner "^29.7.0"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- micromatch "^4.0.4"
- parse-json "^5.2.0"
- pretty-format "^29.7.0"
- slash "^3.0.0"
- strip-json-comments "^3.1.1"
-
-jest-diff@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.7.0.tgz#017934a66ebb7ecf6f205e84699be10afd70458a"
- integrity sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==
- dependencies:
- chalk "^4.0.0"
- diff-sequences "^29.6.3"
- jest-get-type "^29.6.3"
- pretty-format "^29.7.0"
-
-jest-docblock@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-29.7.0.tgz#8fddb6adc3cdc955c93e2a87f61cfd350d5d119a"
- integrity sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==
- dependencies:
- detect-newline "^3.0.0"
-
-jest-each@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-29.7.0.tgz#162a9b3f2328bdd991beaabffbb74745e56577d1"
- integrity sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==
- dependencies:
- "@jest/types" "^29.6.3"
- chalk "^4.0.0"
- jest-get-type "^29.6.3"
- jest-util "^29.7.0"
- pretty-format "^29.7.0"
-
-jest-environment-node@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-29.7.0.tgz#0b93e111dda8ec120bc8300e6d1fb9576e164376"
- integrity sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/fake-timers" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- jest-mock "^29.7.0"
- jest-util "^29.7.0"
-
-jest-get-type@^29.6.3:
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.6.3.tgz#36f499fdcea197c1045a127319c0481723908fd1"
- integrity sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==
-
-jest-haste-map@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-29.7.0.tgz#3c2396524482f5a0506376e6c858c3bbcc17b104"
- integrity sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/graceful-fs" "^4.1.3"
- "@types/node" "*"
- anymatch "^3.0.3"
- fb-watchman "^2.0.0"
- graceful-fs "^4.2.9"
- jest-regex-util "^29.6.3"
- jest-util "^29.7.0"
- jest-worker "^29.7.0"
- micromatch "^4.0.4"
- walker "^1.0.8"
- optionalDependencies:
- fsevents "^2.3.2"
-
-jest-leak-detector@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz#5b7ec0dadfdfec0ca383dc9aa016d36b5ea4c728"
- integrity sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==
- dependencies:
- jest-get-type "^29.6.3"
- pretty-format "^29.7.0"
-
-jest-matcher-utils@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz#ae8fec79ff249fd592ce80e3ee474e83a6c44f12"
- integrity sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==
- dependencies:
- chalk "^4.0.0"
- jest-diff "^29.7.0"
- jest-get-type "^29.6.3"
- pretty-format "^29.7.0"
-
-jest-message-util@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.7.0.tgz#8bc392e204e95dfe7564abbe72a404e28e51f7f3"
- integrity sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==
- dependencies:
- "@babel/code-frame" "^7.12.13"
- "@jest/types" "^29.6.3"
- "@types/stack-utils" "^2.0.0"
- chalk "^4.0.0"
- graceful-fs "^4.2.9"
- micromatch "^4.0.4"
- pretty-format "^29.7.0"
- slash "^3.0.0"
- stack-utils "^2.0.3"
-
-jest-mock@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-29.7.0.tgz#4e836cf60e99c6fcfabe9f99d017f3fdd50a6347"
- integrity sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- jest-util "^29.7.0"
-
-jest-pnp-resolver@^1.2.2:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c"
- integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==
-
-jest-regex-util@^29.6.3:
- version "29.6.3"
- resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-29.6.3.tgz#4a556d9c776af68e1c5f48194f4d0327d24e8a52"
- integrity sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==
-
-jest-resolve-dependencies@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz#1b04f2c095f37fc776ff40803dc92921b1e88428"
- integrity sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==
- dependencies:
- jest-regex-util "^29.6.3"
- jest-snapshot "^29.7.0"
-
-jest-resolve@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-29.7.0.tgz#64d6a8992dd26f635ab0c01e5eef4399c6bcbc30"
- integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==
- dependencies:
- chalk "^4.0.0"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- jest-pnp-resolver "^1.2.2"
- jest-util "^29.7.0"
- jest-validate "^29.7.0"
- resolve "^1.20.0"
- resolve.exports "^2.0.0"
- slash "^3.0.0"
-
-jest-runner@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-29.7.0.tgz#809af072d408a53dcfd2e849a4c976d3132f718e"
- integrity sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==
- dependencies:
- "@jest/console" "^29.7.0"
- "@jest/environment" "^29.7.0"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- emittery "^0.13.1"
- graceful-fs "^4.2.9"
- jest-docblock "^29.7.0"
- jest-environment-node "^29.7.0"
- jest-haste-map "^29.7.0"
- jest-leak-detector "^29.7.0"
- jest-message-util "^29.7.0"
- jest-resolve "^29.7.0"
- jest-runtime "^29.7.0"
- jest-util "^29.7.0"
- jest-watcher "^29.7.0"
- jest-worker "^29.7.0"
- p-limit "^3.1.0"
- source-map-support "0.5.13"
-
-jest-runtime@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-29.7.0.tgz#efecb3141cf7d3767a3a0cc8f7c9990587d3d817"
- integrity sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==
- dependencies:
- "@jest/environment" "^29.7.0"
- "@jest/fake-timers" "^29.7.0"
- "@jest/globals" "^29.7.0"
- "@jest/source-map" "^29.6.3"
- "@jest/test-result" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- cjs-module-lexer "^1.0.0"
- collect-v8-coverage "^1.0.0"
- glob "^7.1.3"
- graceful-fs "^4.2.9"
- jest-haste-map "^29.7.0"
- jest-message-util "^29.7.0"
- jest-mock "^29.7.0"
- jest-regex-util "^29.6.3"
- jest-resolve "^29.7.0"
- jest-snapshot "^29.7.0"
- jest-util "^29.7.0"
- slash "^3.0.0"
- strip-bom "^4.0.0"
-
-jest-serial-runner@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/jest-serial-runner/-/jest-serial-runner-1.2.1.tgz#0f5f8dbe6f077119bd1fdd7e8518f92353c194d5"
- integrity sha512-d59fF+7HdjNvQEL7B4WyFE+f8q5tGzlNUqtOnxTrT1ofun7O6/Lgm/j255BBgCY2fmSue/34M7Xy9+VWRByP0Q==
-
-jest-snapshot@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-29.7.0.tgz#c2c574c3f51865da1bb329036778a69bf88a6be5"
- integrity sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==
- dependencies:
- "@babel/core" "^7.11.6"
- "@babel/generator" "^7.7.2"
- "@babel/plugin-syntax-jsx" "^7.7.2"
- "@babel/plugin-syntax-typescript" "^7.7.2"
- "@babel/types" "^7.3.3"
- "@jest/expect-utils" "^29.7.0"
- "@jest/transform" "^29.7.0"
- "@jest/types" "^29.6.3"
- babel-preset-current-node-syntax "^1.0.0"
- chalk "^4.0.0"
- expect "^29.7.0"
- graceful-fs "^4.2.9"
- jest-diff "^29.7.0"
- jest-get-type "^29.6.3"
- jest-matcher-utils "^29.7.0"
- jest-message-util "^29.7.0"
- jest-util "^29.7.0"
- natural-compare "^1.4.0"
- pretty-format "^29.7.0"
- semver "^7.5.3"
-
-jest-util@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc"
- integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==
- dependencies:
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- chalk "^4.0.0"
- ci-info "^3.2.0"
- graceful-fs "^4.2.9"
- picomatch "^2.2.3"
-
-jest-validate@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-29.7.0.tgz#7bf705511c64da591d46b15fce41400d52147d9c"
- integrity sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==
- dependencies:
- "@jest/types" "^29.6.3"
- camelcase "^6.2.0"
- chalk "^4.0.0"
- jest-get-type "^29.6.3"
- leven "^3.1.0"
- pretty-format "^29.7.0"
-
-jest-watcher@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-29.7.0.tgz#7810d30d619c3a62093223ce6bb359ca1b28a2f2"
- integrity sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==
- dependencies:
- "@jest/test-result" "^29.7.0"
- "@jest/types" "^29.6.3"
- "@types/node" "*"
- ansi-escapes "^4.2.1"
- chalk "^4.0.0"
- emittery "^0.13.1"
- jest-util "^29.7.0"
- string-length "^4.0.1"
-
-jest-worker@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a"
- integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==
- dependencies:
- "@types/node" "*"
- jest-util "^29.7.0"
- merge-stream "^2.0.0"
- supports-color "^8.0.0"
-
-jest@29.6.1:
- version "29.6.1"
- resolved "https://registry.yarnpkg.com/jest/-/jest-29.6.1.tgz#74be1cb719c3abe439f2d94aeb18e6540a5b02ad"
- integrity sha512-Nirw5B4nn69rVUZtemCQhwxOBhm0nsp3hmtF4rzCeWD7BkjAXRIji7xWQfnTNbz9g0aVsBX6aZK3n+23LM6uDw==
- dependencies:
- "@jest/core" "^29.6.1"
- "@jest/types" "^29.6.1"
- import-local "^3.0.2"
- jest-cli "^29.6.1"
-
-js-sha256@^0.9.0:
- version "0.9.0"
- resolved "https://registry.yarnpkg.com/js-sha256/-/js-sha256-0.9.0.tgz#0b89ac166583e91ef9123644bd3c5334ce9d0966"
- integrity sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==
-
-js-sha3@0.5.7:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7"
- integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g==
-
-js-sha3@0.8.0:
- version "0.8.0"
- resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840"
- integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==
-
-"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
- integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-
-js-yaml@^3.13.1:
- version "3.14.1"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
- integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
- dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
-
-jsesc@^2.5.1:
- version "2.5.2"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
- integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
-
-jsesc@~0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
- integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==
-
-json-parse-even-better-errors@^2.3.0:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
- integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
-
-json5@^2.2.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c"
- integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==
-
-json5@^2.2.3:
- version "2.2.3"
- resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
- integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
-
-jsonfile@^6.0.1:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
- integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==
- dependencies:
- universalify "^2.0.0"
- optionalDependencies:
- graceful-fs "^4.1.6"
-
-keccak@^3.0.3:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/keccak/-/keccak-3.0.4.tgz#edc09b89e633c0549da444432ecf062ffadee86d"
- integrity sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==
- dependencies:
- node-addon-api "^2.0.0"
- node-gyp-build "^4.2.0"
- readable-stream "^3.6.0"
-
-kind-of@^6.0.2:
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
- integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
-
-kleur@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
- integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
-
-leven@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
- integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
-
-lines-and-columns@^1.1.6:
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
- integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
-
-locate-path@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e"
- integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==
- dependencies:
- p-locate "^3.0.0"
- path-exists "^3.0.0"
-
-locate-path@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0"
- integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==
- dependencies:
- p-locate "^4.1.0"
-
-lodash.camelcase@^4.3.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
- integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==
-
-lodash.debounce@^4.0.8:
- version "4.0.8"
- resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
- integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
-
-long@^5.0.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/long/-/long-5.2.0.tgz#2696dadf4b4da2ce3f6f6b89186085d94d52fd61"
- integrity sha512-9RTUNjK60eJbx3uz+TEGF7fUr29ZDxR5QzXcyDpeSfeH28S9ycINflOgOlppit5U+4kNTe83KQnMEerw7GmE8w==
-
-loose-envify@^1.0.0, loose-envify@^1.1.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
- 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.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
- integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
- dependencies:
- yallist "^3.0.2"
-
-lru-cache@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
- integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
- dependencies:
- yallist "^4.0.0"
-
-lru-cache@^7.14.1:
- version "7.18.3"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89"
- integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==
-
-make-dir@^2.0.0, make-dir@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
- integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==
- dependencies:
- pify "^4.0.1"
- semver "^5.6.0"
-
-make-dir@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
- integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
- dependencies:
- semver "^6.0.0"
-
-makeerror@1.0.12:
- version "1.0.12"
- resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a"
- integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==
- dependencies:
- tmpl "1.0.5"
-
-md5.js@^1.3.4:
- version "1.3.5"
- resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"
- integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==
- dependencies:
- hash-base "^3.0.0"
- inherits "^2.0.1"
- safe-buffer "^5.1.2"
-
-merge-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
- integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
-
-micromatch@^4.0.4:
- version "4.0.5"
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
- 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.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
- integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
-
-mime-types@^2.1.12:
- version "2.1.35"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
- integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
- dependencies:
- mime-db "1.52.0"
-
-mimic-fn@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
- integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
-
-minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
- integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
-
-minimalistic-crypto-utils@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
- integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==
-
-minimatch@^3.0.4, minimatch@^3.1.1:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
- integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
- dependencies:
- brace-expansion "^1.1.7"
-
-mkdirp-classic@^0.5.2:
- version "0.5.3"
- resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113"
- integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==
-
-ms@2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
- integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
-
-nan@^2.14.0, nan@^2.15.0, nan@^2.16.0:
- version "2.16.0"
- resolved "https://registry.yarnpkg.com/nan/-/nan-2.16.0.tgz#664f43e45460fb98faf00edca0bb0d7b8dce7916"
- integrity sha512-UdAqHyFngu7TfQKsCBgAA6pWDkT8MAO7d0jyOecVhN5354xbLqdn8mV9Tat9gepAupm0bt2DbeaSC8vS52MuFA==
-
-natural-compare@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
- integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
-
-node-addon-api@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-2.0.2.tgz#432cfa82962ce494b132e9d72a15b29f71ff5d32"
- integrity sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==
-
-node-gyp-build@^4.2.0:
- version "4.6.1"
- resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.6.1.tgz#24b6d075e5e391b8d5539d98c7fc5c210cac8a3e"
- integrity sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==
-
-node-int64@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
- integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==
-
-node-releases@^2.0.13:
- version "2.0.13"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d"
- integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==
-
-node-releases@^2.0.6:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503"
- integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==
-
-normalize-path@^3.0.0, normalize-path@~3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
- integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
-
-npm-run-path@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
- integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
- dependencies:
- path-key "^3.0.0"
-
-object-assign@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
- integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
-
-once@^1.3.0, once@^1.3.1, once@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
- integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
- dependencies:
- wrappy "1"
-
-onetime@^5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
- integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
- dependencies:
- mimic-fn "^2.1.0"
-
-p-limit@^2.0.0, p-limit@^2.2.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
- integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
- dependencies:
- p-try "^2.0.0"
-
-p-limit@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
- integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
- dependencies:
- yocto-queue "^0.1.0"
-
-p-locate@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4"
- integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==
- dependencies:
- p-limit "^2.0.0"
-
-p-locate@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07"
- integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==
- dependencies:
- p-limit "^2.2.0"
-
-p-try@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6"
- integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
-
-parse-json@^5.2.0:
- version "5.2.0"
- resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
- 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"
-
-path-exists@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515"
- integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==
-
-path-exists@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
- integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
-
-path-is-absolute@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
- integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
-
-path-key@^3.0.0, path-key@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
- integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
-
-path-parse@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
- integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-
-picocolors@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
- integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
-
-picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
- integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
-
-pify@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"
- integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==
-
-pirates@^4.0.4:
- version "4.0.6"
- resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9"
- integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==
-
-pirates@^4.0.5:
- version "4.0.5"
- resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b"
- integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==
-
-pkg-dir@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3"
- integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==
- dependencies:
- find-up "^3.0.0"
-
-pkg-dir@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
- integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
- dependencies:
- find-up "^4.0.0"
-
-pngjs@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-7.0.0.tgz#a8b7446020ebbc6ac739db6c5415a65d17090e26"
- integrity sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==
-
-pretty-format@^29.7.0:
- version "29.7.0"
- resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.7.0.tgz#ca42c758310f365bfa71a0bda0a807160b776812"
- integrity sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==
- dependencies:
- "@jest/schemas" "^29.6.3"
- ansi-styles "^5.0.0"
- react-is "^18.0.0"
-
-prompts@^2.0.1:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069"
- integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
- dependencies:
- kleur "^3.0.3"
- sisteransi "^1.0.5"
-
-protobufjs@^7.2.4:
- version "7.2.5"
- resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-7.2.5.tgz#45d5c57387a6d29a17aab6846dcc283f9b8e7f2d"
- integrity sha512-gGXRSXvxQ7UiPgfw8gevrfRWcTlSbOFg+p/N+JVJEK5VhueL2miT6qTymqAmjr1Q5WbOCyJbyrk6JfWKwlFn6A==
- dependencies:
- "@protobufjs/aspromise" "^1.1.2"
- "@protobufjs/base64" "^1.1.2"
- "@protobufjs/codegen" "^2.0.4"
- "@protobufjs/eventemitter" "^1.1.0"
- "@protobufjs/fetch" "^1.1.0"
- "@protobufjs/float" "^1.0.2"
- "@protobufjs/inquire" "^1.1.0"
- "@protobufjs/path" "^1.1.2"
- "@protobufjs/pool" "^1.1.0"
- "@protobufjs/utf8" "^1.1.0"
- "@types/node" ">=13.7.0"
- long "^5.0.0"
-
-proxy-from-env@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
- integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
-
-pump@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
- integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
- dependencies:
- end-of-stream "^1.1.0"
- once "^1.3.1"
-
-pure-rand@^6.0.0:
- version "6.0.4"
- resolved "https://registry.yarnpkg.com/pure-rand/-/pure-rand-6.0.4.tgz#50b737f6a925468679bff00ad20eade53f37d5c7"
- integrity sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==
-
-randombytes@2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.3.tgz#674c99760901c3c4112771a31e521dc349cc09ec"
- integrity sha512-lDVjxQQFoCG1jcrP06LNo2lbWp4QTShEXnhActFBwYuHprllQV6VUpwreApsYqCgD+N1mHoqJ/BI/4eV4R2GYg==
-
-randomstring@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/randomstring/-/randomstring-1.3.0.tgz#1bf9d730066899e70aee3285573f84708278683d"
- integrity sha512-gY7aQ4i1BgwZ8I1Op4YseITAyiDiajeZOPQUbIq9TPGPhUm5FX59izIaOpmKbME1nmnEiABf28d9K2VSii6BBg==
- dependencies:
- randombytes "2.0.3"
-
-react-dom@^17.0.2:
- version "17.0.2"
- resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23"
- integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==
- dependencies:
- loose-envify "^1.1.0"
- object-assign "^4.1.1"
- scheduler "^0.20.2"
-
-react-is@^18.0.0:
- version "18.2.0"
- resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b"
- integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==
-
-react@^17.0.2:
- version "17.0.2"
- resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037"
- integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==
- dependencies:
- loose-envify "^1.1.0"
- object-assign "^4.1.1"
-
-readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.5.0, readable-stream@^3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
- integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
- dependencies:
- inherits "^2.0.3"
- string_decoder "^1.1.1"
- util-deprecate "^1.0.1"
-
-readdirp@~3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
- integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
- dependencies:
- picomatch "^2.2.1"
-
-regenerate-unicode-properties@^10.0.1:
- version "10.0.1"
- resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz#7f442732aa7934a3740c779bb9b3340dccc1fb56"
- integrity sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==
- dependencies:
- regenerate "^1.4.2"
-
-regenerate-unicode-properties@^10.1.0:
- version "10.1.1"
- resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480"
- integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==
- dependencies:
- regenerate "^1.4.2"
-
-regenerate@^1.4.2:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
- integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
-
-regenerator-runtime@^0.13.4:
- version "0.13.9"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52"
- integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==
-
-regenerator-runtime@^0.13.9:
- version "0.13.11"
- resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
- integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
-
-regenerator-transform@^0.15.2:
- version "0.15.2"
- resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4"
- integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==
- dependencies:
- "@babel/runtime" "^7.8.4"
-
-regexpu-core@^5.1.0:
- version "5.1.0"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.1.0.tgz#2f8504c3fd0ebe11215783a41541e21c79942c6d"
- integrity sha512-bb6hk+xWd2PEOkj5It46A16zFMs2mv86Iwpdu94la4S3sJ7C973h2dHpYKwIBGaWSO7cIRJ+UX0IeMaWcO4qwA==
- dependencies:
- regenerate "^1.4.2"
- regenerate-unicode-properties "^10.0.1"
- regjsgen "^0.6.0"
- regjsparser "^0.8.2"
- unicode-match-property-ecmascript "^2.0.0"
- unicode-match-property-value-ecmascript "^2.0.0"
-
-regexpu-core@^5.3.1:
- version "5.3.2"
- resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b"
- integrity sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==
- dependencies:
- "@babel/regjsgen" "^0.8.0"
- regenerate "^1.4.2"
- regenerate-unicode-properties "^10.1.0"
- regjsparser "^0.9.1"
- unicode-match-property-ecmascript "^2.0.0"
- unicode-match-property-value-ecmascript "^2.1.0"
-
-regjsgen@^0.6.0:
- version "0.6.0"
- resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.6.0.tgz#83414c5354afd7d6627b16af5f10f41c4e71808d"
- integrity sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==
-
-regjsparser@^0.8.2:
- version "0.8.4"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.8.4.tgz#8a14285ffcc5de78c5b95d62bbf413b6bc132d5f"
- integrity sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==
- dependencies:
- jsesc "~0.5.0"
-
-regjsparser@^0.9.1:
- version "0.9.1"
- resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709"
- integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==
- dependencies:
- jsesc "~0.5.0"
-
-require-directory@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42"
- integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==
-
-resolve-cwd@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
- integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
- dependencies:
- resolve-from "^5.0.0"
-
-resolve-from@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
- integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
-
-resolve.exports@^2.0.0:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-2.0.2.tgz#f8c934b8e6a13f539e38b7098e2e36134f01e800"
- integrity sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==
-
-resolve@^1.14.2:
- version "1.22.1"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177"
- integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==
- dependencies:
- is-core-module "^2.9.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-resolve@^1.20.0:
- version "1.22.8"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d"
- integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==
- dependencies:
- is-core-module "^2.13.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-ripemd160@^2.0.0, ripemd160@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
- integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==
- dependencies:
- hash-base "^3.0.0"
- inherits "^2.0.1"
-
-rxjs@6, rxjs@^6.6.7:
- version "6.6.7"
- resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
- integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==
- dependencies:
- tslib "^1.9.0"
-
-safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
- integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
-safe-buffer@~5.1.1:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
- integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
-
-safer-buffer@~2.1.0:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
- integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
-
-scheduler@^0.20.2:
- version "0.20.2"
- resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91"
- integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==
- dependencies:
- loose-envify "^1.1.0"
- object-assign "^4.1.1"
-
-scrypt-js@2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-2.0.4.tgz#32f8c5149f0797672e551c07e230f834b6af5f16"
- integrity sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw==
-
-scrypt-js@3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312"
- integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==
-
-secp256k1@^3.7.1:
- version "3.8.0"
- resolved "https://registry.yarnpkg.com/secp256k1/-/secp256k1-3.8.0.tgz#28f59f4b01dbee9575f56a47034b7d2e3b3b352d"
- integrity sha512-k5ke5avRZbtl9Tqx/SA7CbY3NF6Ro+Sj9cZxezFzuBlLDmyqPiL8hJJ+EmzD8Ig4LUDByHJ3/iPOVoRixs/hmw==
- dependencies:
- bindings "^1.5.0"
- bip66 "^1.1.5"
- bn.js "^4.11.8"
- create-hash "^1.2.0"
- drbg.js "^1.0.1"
- elliptic "^6.5.2"
- nan "^2.14.0"
- safe-buffer "^5.1.2"
-
-semver@^5.6.0:
- version "5.7.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
- integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
-
-semver@^6.0.0, semver@^6.3.0:
- version "6.3.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
- integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
-
-semver@^6.3.1:
- version "6.3.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
- integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
-
-semver@^7.3.5:
- version "7.3.7"
- resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f"
- integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==
- dependencies:
- lru-cache "^6.0.0"
-
-semver@^7.5.3, semver@^7.5.4:
- version "7.5.4"
- resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
- integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
- dependencies:
- lru-cache "^6.0.0"
-
-setimmediate@1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.4.tgz#20e81de622d4a02588ce0c8da8973cbcf1d3138f"
- integrity sha512-/TjEmXQVEzdod/FFskf3o7oOAsGhHf2j1dZqRFbDzq4F3mvvxflIIi4Hd3bLQE9y/CpwqfSQam5JakI/mi3Pog==
-
-sha.js@^2.4.0, sha.js@^2.4.8:
- version "2.4.11"
- resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
- integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==
- dependencies:
- inherits "^2.0.1"
- safe-buffer "^5.0.1"
-
-shallow-clone@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3"
- integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==
- dependencies:
- kind-of "^6.0.2"
-
-shebang-command@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
- integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
- dependencies:
- shebang-regex "^3.0.0"
-
-shebang-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
- integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
-
-signal-exit@^3.0.3, signal-exit@^3.0.7:
- version "3.0.7"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
- integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
-
-sisteransi@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
- integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
-
-slash@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
- integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
-
-slash@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
- integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
-
-source-map-support@0.5.13:
- version "0.5.13"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz#31b24a9c2e73c2de85066c0feb7d44767ed52932"
- integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
-source-map-support@^0.5.16:
- version "0.5.21"
- resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
- integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
- dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
-
-source-map@^0.6.0, source-map@^0.6.1:
- version "0.6.1"
- resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
- integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
-
-split-ca@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/split-ca/-/split-ca-1.0.1.tgz#6c83aff3692fa61256e0cd197e05e9de157691a6"
- integrity sha512-Q5thBSxp5t8WPTTJQS59LrGqOZqOsrhDGDVm8azCqIBjSBd7nd9o2PM+mDulQQkh8h//4U6hFZnc/mul8t5pWQ==
-
-sprintf-js@~1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
- integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
-
-ssh2@^1.4.0:
- version "1.11.0"
- resolved "https://registry.yarnpkg.com/ssh2/-/ssh2-1.11.0.tgz#ce60186216971e12f6deb553dcf82322498fe2e4"
- integrity sha512-nfg0wZWGSsfUe/IBJkXVll3PEZ//YH2guww+mP88gTpuSU4FtZN7zu9JoeTGOyCNx2dTDtT9fOpWwlzyj4uOOw==
- dependencies:
- asn1 "^0.2.4"
- bcrypt-pbkdf "^1.0.2"
- optionalDependencies:
- cpu-features "~0.0.4"
- nan "^2.16.0"
-
-stack-utils@^2.0.3:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f"
- integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==
- dependencies:
- escape-string-regexp "^2.0.0"
-
-string-length@^4.0.1:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a"
- integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==
- dependencies:
- char-regex "^1.0.2"
- strip-ansi "^6.0.0"
-
-string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
- 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_decoder@^1.1.1:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
- integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
- dependencies:
- safe-buffer "~5.2.0"
-
-strip-ansi@^6.0.0, strip-ansi@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
-strip-bom@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
- integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
-
-strip-final-newline@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
- integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
-
-strip-json-comments@^3.1.1:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
- integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
-
-supports-color@^5.3.0:
- version "5.5.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
- integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
- dependencies:
- has-flag "^3.0.0"
-
-supports-color@^7.1.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
- integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
- dependencies:
- has-flag "^4.0.0"
-
-supports-color@^8.0.0:
- version "8.1.1"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"
- integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
- dependencies:
- has-flag "^4.0.0"
-
-supports-preserve-symlinks-flag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
- integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-
-tar-fs@~2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.0.1.tgz#e44086c1c60d31a4f0cf893b1c4e155dabfae9e2"
- integrity sha512-6tzWDMeroL87uF/+lin46k+Q+46rAJ0SyPGz7OW7wTgblI273hsBqk2C1j0/xNadNLKDTUL9BukSjB7cwgmlPA==
- dependencies:
- chownr "^1.1.1"
- mkdirp-classic "^0.5.2"
- pump "^3.0.0"
- tar-stream "^2.0.0"
-
-tar-stream@^2.0.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287"
- integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==
- dependencies:
- bl "^4.0.3"
- end-of-stream "^1.4.1"
- fs-constants "^1.0.0"
- inherits "^2.0.3"
- readable-stream "^3.1.1"
-
-test-exclude@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
- integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==
- dependencies:
- "@istanbuljs/schema" "^0.1.2"
- glob "^7.1.4"
- minimatch "^3.0.4"
-
-tmpl@1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc"
- integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==
-
-to-fast-properties@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
- integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==
-
-to-regex-range@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
- dependencies:
- is-number "^7.0.0"
-
-tslib@^1.9.0:
- version "1.14.1"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
- integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
-
-tweetnacl@^0.14.3:
- version "0.14.5"
- resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
- integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==
-
-type-detect@4.0.8:
- version "4.0.8"
- resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
- integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
-
-type-fest@^0.21.3:
- version "0.21.3"
- resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
- integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
-
-undici-types@~5.25.1:
- version "5.25.3"
- resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.25.3.tgz#e044115914c85f0bcbb229f346ab739f064998c3"
- integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA==
-
-unicode-canonical-property-names-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc"
- integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==
-
-unicode-match-property-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3"
- integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==
- dependencies:
- unicode-canonical-property-names-ecmascript "^2.0.0"
- unicode-property-aliases-ecmascript "^2.0.0"
-
-unicode-match-property-value-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714"
- integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==
-
-unicode-match-property-value-ecmascript@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0"
- integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==
-
-unicode-property-aliases-ecmascript@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8"
- integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==
-
-universalify@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
- integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==
-
-update-browserslist-db@^1.0.13:
- version "1.0.13"
- resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4"
- integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==
- dependencies:
- escalade "^3.1.1"
- picocolors "^1.0.0"
-
-update-browserslist-db@^1.0.4:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.5.tgz#be06a5eedd62f107b7c19eb5bcefb194411abf38"
- integrity sha512-dteFFpCyvuDdr9S/ff1ISkKt/9YZxKjI9WlRR99c180GaztJtRa/fn18FdxGVKVsnPY7/a/FDN68mcvUmP4U7Q==
- dependencies:
- escalade "^3.1.1"
- picocolors "^1.0.0"
-
-util-deprecate@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
- integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
-
-utility-types@^3.10.0:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.10.0.tgz#ea4148f9a741015f05ed74fd615e1d20e6bed82b"
- integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==
-
-uuid@2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.1.tgz#c2a30dedb3e535d72ccf82e343941a50ba8533ac"
- integrity sha512-nWg9+Oa3qD2CQzHIP4qKUqwNfzKn8P0LtFhotaCTFchsV7ZfDhAybeip/HZVeMIpZi9JgY1E3nUlwaCmZT1sEg==
-
-v8-to-istanbul@^9.0.1:
- version "9.1.3"
- resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-9.1.3.tgz#ea456604101cd18005ac2cae3cdd1aa058a6306b"
- integrity sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==
- dependencies:
- "@jridgewell/trace-mapping" "^0.3.12"
- "@types/istanbul-lib-coverage" "^2.0.1"
- convert-source-map "^2.0.0"
-
-walker@^1.0.8:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f"
- integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==
- dependencies:
- makeerror "1.0.12"
-
-which@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
- integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
- dependencies:
- isexe "^2.0.0"
-
-wrap-ansi@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
- 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.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
- integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
-
-write-file-atomic@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd"
- integrity sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==
- dependencies:
- imurmurhash "^0.1.4"
- signal-exit "^3.0.7"
-
-ws@7.4.6:
- version "7.4.6"
- resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
- integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
-
-ws@^7.5.2:
- version "7.5.9"
- resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591"
- integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==
-
-xmlhttprequest@1.8.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz#67fe075c5c24fef39f9d65f5f7b7fe75171968fc"
- integrity sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==
-
-y18n@^5.0.5:
- version "5.0.8"
- resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
- integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
-
-yallist@^3.0.2:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
- integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
-
-yallist@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
- integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
-
-yargs-parser@^21.1.1:
- version "21.1.1"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"
- integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
-
-yargs@^17.3.1, yargs@^17.7.2:
- version "17.7.2"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269"
- integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
- dependencies:
- cliui "^8.0.1"
- escalade "^3.1.1"
- get-caller-file "^2.0.5"
- require-directory "^2.1.1"
- string-width "^4.2.3"
- y18n "^5.0.5"
- yargs-parser "^21.1.1"
-
-yocto-queue@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
- integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==